标题：精通Struts2:基于MVC的JavaWeb应用开发实战
版权信息
书 名: 精通Struts2：基于MVC的JavaWeb应用开发实战
作　者：陈云芳
出版社： 人民邮电出版社
出版时间： 2008
ISBN: 9787115178770
开本： 16
定价: 65.00 元
目录　Struts2快速入门
第1章　Web应用开发概览1.1　Web应用与Web开发框架　
1.1.1　Web应用开发历程　
1.1.2　为什么需要Web框架　
1.2　MVC模式和Struts　
1.2.1　什么是MVC模式　
1.2.2　MVC模式的Web框架映射　
1.2.3　Struts2对MVC模式的改进　
1.3　Struts2框架概览　
1.3.1　Struts2框架的演变　
1.3.2　Struts2的特性　
1.3.3　与其他Web框架的比较　
1.4　小结第2章　第一个Struts2应用2.1　Struts2开发环境配置　
2.1.1　JDK1.5.10和Tomcat的安装与配置　
2.1.2　MyEclipse的安装和配置　
2.1.3　Struts2的安装　
2.2　创建配置文件　
2.2.1　配置web.xml文件　
2.2.2　配置Struts2的xml文件　
2.2.3　配置Struts2的properties文件　
2.3　第一个Action　
2.3.1　创建helloworld.action　
2.3.2　在struts.xml中配置Action　
2.3.3　创建视图hello.jsp　
2.3.4　测试Action　
2.4　体验Struts2更高级功能　
2.4.1　处理输入　
2.4.2　执行结果　
2.4.3　拦截器　
2.5　小结　
目录　Struts2框架核心
第3章　Action3.1　Action简介　
3.1.1　返回类型　
3.1.2　execute（）方法　
3.2　Action接口　
3.3　ActionSupport基类　
3.4　Action实例　
3.4.1　实现Action接口的实例　
3.4.2　实现ActionSupport基类的实例　
3.5　在Action中实现基本校验　
3.5.1　使用Action的execute（）方法　
3.5.2　使用ActionSupport的validate（）方法　
3.5.3　使用注释实现校验　
3.6　ActionContext　
3.7　小结　
第4章　Interceptor4.1　Interceotor基础　
4.1.1　理解Interceptor　
4.1.2　Interceptor何时调用　
4.1.3　Interceptor接口　
4.1.4　Interceptor相关类　
4.2　使用预定义的Interceptor　
4.2.1　预定义Interceptor类　
4.2.2　LoggingInterceptor示例　
4.3　使用自定义的Interceptor　
4.3.1　自定义Interceptor的配置　
4.3.2　实现自己的Interceptor　
4.4　Interceptor应用实例　
4.4.1　execAndWait拦截器源码分析　
4.4.2　项目概述　
4.4.3　Action实现文件　
4.4.4　页面文件　
4.4.5　配置文件　
4.4.6　运行　
4.5　小结　
第5章　Result5.1　自定义Result　
5.1.1　实现自定义Result　
5.1.2　配置自己的Result　
5.1.3　运行测试Result　
5.2　常用的Result　
5.2.1　Dispatcher　
5.2.2　Redirect　
5.2.3　Chain　
5.3　其他的Result　
5.4　小结　
第6章　标签6.1　标签介绍　
6.2　自定义标签　
6.2.1　标签的实现　
6.2.2　标签的配置　
6.2.3　运行　
6.3　Struts2标签概览　
6.3.1　标签简介　
6.3.2　使用标签的准备　
6.4　非UI标签　
6.4.1　数据标签　
6.4.2　控制标签　
6.4.3　其他标签　
6.5　UI标签　
6.5.1　通用属性　
6.5.2　简单UI标签　
6.5.3　高级UI标签　
6.6　小结　
第7章　表达式语言OGNL7.1　OGNL的基本特性　
7.1.1　常量的声明　
7.1.2　方法调用　
7.1.3　变量引用　
7.2　操作集合　
7.2.1　操作列表Lists　
7.2.2　操作映射Maps　
7.2.3　操作数组Array　
7.2.4　集合操作　
7.3　OGNL的高级特性　
7.3.1　类型转换　
7.3.2　与值栈的联系　
7.3.3　lamuda表达式　
7.3.4　Java和OGNL的比较　
7.4　在JSP中使用OGNL　
7.4.1　项目概述　
7.4.2　工程代码编写　
7.4.3　运行　
7.5　小结　
第8章　多视图8.1　Velocity　
8.1.1　Velocity简介　
8.1.2　语法　
8.1.3　Velocity实例分析　
8.2　FreeMarker　
8.2.1　FreeMarker简介　
8.2.2　语法　
8.2.3　FreeMarker实例分析　
8.2.4　FreeMarker和Velocity的比较　
8.3　JasperReports　
8.3.1　JasperReports介绍　
8.3.2　JasperReports实例分析　
8.4　小结　
第9章　数据持久化——使用Hibernate9.1　数据持久化与Hibernate基础　
9.1.1　数据持久化基础　
9.1.2　Hibernate基础　
9.2　Hibernate简单应用　
9.3　Hibernate核心　
9.3.1　Hibernate的核心接口　
9.3.2　Hibernate的配置文件　
9.3.3　Hibernate的对象关系映射　
9.3.4　Hibernate的检索方式　
9.4　Hibernate实例　
9.5　小结　
目录　Struts2高级特性
第10章　校验框架10.1　使用Struts2自带的校验器　
10.1.1　配置拦截器　
10.1.2　配置校验器　
10.1.3　自带校验器实例　
10.2　使用自定义校验器　
10.2.1　创建自定义校验器　
10.2.2　自定义校验器的注册　
10.2.3　自定义校验器实例　
10.3　小结　
第11章　类型转换11.1　为什么需要类型转换　
11.1.1　没有类型转换的实例　
11.1.2　类型转换带来的好处　
11.2　Struts2自带的转换器　
11.2.1　自带转换器的数据类型　
11.2.2　转换器的源码分析　
11.3　自定义转换器　
11.3.1　编写转换器类　
11.3.2　配置　
11.4　高级类型转换　
11.4.1　空值属性处理　
11.4.2　类型转换错误处理　
11.5　小结　
第12章　国际化12.1　国际化基础　
12.2　Struts2与国际化　
12.2.1　Struts2对国际化的支持　
12.2.2　资源包相关　
12.2.3　国际化信息的获取　
12.3　Struts2国际化实现　
12.3.1　初始页面的国际化　
12.3.2　Action的国际化　
12.3.3　校验的国际化　
12.4　国际化实例　
12.4.1　项目配置与开发　
12.4.2　结果测试　
12.5　小结　
第13章　Struts2调试13.1　MyEclipse中的Java程序调试　
13.1.1　调试配置　
13.1.2　调试视图　
13.1.3　控制程序执行　
13.2　调试Struts2程序　
13.2.1　调试入门　
13.2.2　连接Struts2的源代码　
13.3　Struts2调试应用　
13.3.1　实例的概述　
13.3.2　实例工程的源文件　
13.3.3　调试工程　
13.4　小结　
第14章　Struts2原理探究14.1　控制反转（IOC）　
14.1.1　什么是控制反转　
14.1.2　控制反转的设计方式　
14.1.3　Struts2中的控制反转　
14.2　源码探究　
14.2.1　Struts2启动　
14.2.2　Action处理过程　
14.2.3　Interceptor工作机制　
14.2.4　ActionContext　
14.3　小结　
第15章　Struts2与其他网络框架整合15.1　与SiteMesh整合　
15.1.1　SiteMesh简介　
15.1.2　SiteMesh的安装　
15.1.3　SiteMesh应用实例　
15.2　Quartz作业调度　
15.2.1　Quartz简介　
15.2.2　作业调度简介　
15.2.3　Quartz应用实例　
15.3　Acegi-Security用户管理　
15.3.1　Acegi-Security简介　
15.3.2　Acegi认证过程　
15.3.3　保护Web应用程序　
15.4　小结　
第16章　Ajax与Struts16.1　Ajax入门　
16.1.1　Ajax发展过程　
16.1.2　Ajax魅力所在　
16.2　Ajax核心　
16.2.1　使用XMLHttpRequest对象　
16.2.2　发送请求与处理响应　
16.2.3　实现基本的Ajax技术　
16.3　Struts2与Ajax框架的整合　
16.3.1　Dojo框架　
16.3.2　DWR框架　
16.3.3　使用JSON插件　
16.4　Struts2的Ajax标签　
16.5　小结　
第17章　Struts2测试17.1　软件测试与JUnit基础　
17.1.1　软件测试基础　
17.1.2　JUnit基础　
17.2　JUnit的使用　
17.2.1　JUnit的安装　
17.2.2　创建测试类　
17.2.3　创建被测试类　
17.2.4　运行测试　
17.3　在Eclipse中使用JUnit测试Action　
17.3.1　创建Struts2项目　
17.3.2　创建测试类　
17.3.3　运行测试　
17.4　JUnit高级　
17.4.1　类级别的fixture　
17.4.2　限时测试　
17.4.3　异常测试　
17.4.4　忽略测试　
17.4.5　测试运行器　
17.4.6　测试套件　
17.4.7　参数化测试　
17.5　小结　
第18章　Spring整合18.1　Spring初步　
18.1.1　Spring概述　
18.1.2　Spring准备　
18.1.3　入门实例　
18.2　Spring基础特性　
18.2.1　依赖注入　
18.2.2　Spring封装机制　
18.3　Spring高级特性　
18.3.1　SpringMVC　
18.3.2　数据持久层　
18.4　小结　
目录　Struts2综合项目实战
第19章　网络商店实例编程19.1　项目概述　
19.1.1　网络商店概况　
19.1.2　网络商店的需求分析　
19.1.3　网络商店的业务建模　
19.1.4　迭代式开发介绍　
19.1.5　项目功能模块分割　
19.2　迭代一游客浏览商品　
19.2.1　本阶段迭代的目标　
19.2.2　本阶段页面概述　
19.2.3　商品的数据模型和数据库设计　
19.2.4　实现步骤　
19.3　迭代二用户管理　
19.3.1　本阶段迭代的目标　
19.3.2　本阶段页面概述　
19.3.3　用户数据模型和数据库设计　
19.3.4　实现步骤　
19.4　迭代三购物车管理　
19.4.1　本阶段的迭代目标　
19.4.2　本阶段页面概述　
19.4.3　购物车的功能需求和设计实现　
19.4.4　实现步骤　
19.5　迭代四后台管理员功能　
19.5.1　本阶段的迭代目标　
19.5.2　本阶段页面概述　
19.5.3　实现步骤　
19.6　小结　
第20章　网络文件管理系统20.1　项目概述　
20.1.1　网络文件管理系统概况　
20.1.2　网络文件管理系统需求分析　
20.1.3　网络文件管理系统业务建模　
20.1.4　项目功能模块分割　
20.2　迭代一实现上传、下载、删除文件　
20.2.1　本阶段迭代的目标　
20.2.2　本阶段页面概述　
20.2.3　文件的数据模型　
20.2.4　实现步骤　
20.3　迭代二添加用户管理　
20.3.1　本阶段迭代的目标　
20.3.2　本阶段页面概述　
20.3.3　用户以及用户空间的数据模型　
20.3.4　实现步骤　
20.4　迭代三添加消息处理，备忘录管理　
20.4.1　本阶段迭代的目标　
20.4.2　本阶段页面概述　
20.4.3　消息和备忘录的数据模型
20.4.4　实现步骤　
20.5　迭代四添加管理员功能　
20.5.1　本阶段迭代的目标　
20.5.2　本阶段页面概述　
20.5.3　管理员的数据模型　
20.5.4　实现步骤　
20.6　小结　
第21章　基于Struts2和Ajax的网上购书系统21.1　项目概述　
21.1.1　购书系统概况　
21.1.2　购书系统需求分析　
21.1.3　购书系统业务建模　
21.1.4　项目功能模块分割　
21.2　迭代一用户登录，书籍浏览　
21.2.1　本阶段迭代目标　
21.2.2　本阶段页面概述　
21.2.3　本阶段数据模型　
21.2.4　实现步骤　
21.3　迭代二用户购书　
21.3.1　本阶段迭代目标　
21.3.2　本阶段页面概述　
21.3.3　实现步骤　
21.4　迭代三管理员登录，用户信息查看　
21.4.1　本阶段迭代目标　
21.4.2　本阶段页面概述　
21.4.3　本阶段数据模型　
21.4.4　实现步骤　
21.5　迭代四管理员添加书籍以及添加用户　
21.5.1　本阶段迭代目标　
21.5.2　本阶段页面概述　
21.5.3　实现步骤　
21.6　小结
……