图书目录

目录

第1部分入门

第1章框架入门

本章术语

1.1框架技术简介

1.1.1为什么使用框架技术

1.1.2什么是框架技术

1.1.3框架技术的特点

1.2简单的自定义MVC框架实现

1.2.1使用JSP+JavaBean+Servlet技术

1.2.2使用自定义MVC框架

1.3Struts框架技术

1.3.1Struts1框架

1.3.2Struts2框架

1.4Hibernate框架技术

1.5Spring框架技术

1.6基本开发环境

1.6.1JDK

1.6.2Tomcat服务器

1.6.3Eclipse及MyEclipse

本章知识体系

第2部分Struts1框架

第2章Struts1框架技术基础

本章术语

2.1Struts1框架技术简介

2.1.1为什么使用Struts1框架

2.1.2什么是Struts1框架

2.2如何使用Struts1框架

2.2.1在MyEclipse中加入Struts1框架的支持

2.2.2Struts1的下载和安装

2.2.3增加对新版本Struts1框架的支持

2.3Struts1框架开发初体验

2.3.1编写JSP页面 

2.3.2编写ActionForm

2.3.3编写Action

2.3.4配置struts-config.xml文件

2.3.5运行测试

2.3.6开发流程总结

2.4Struts1的工作流程

2.4.1Struts1的工作流程

2.4.2登录程序流程

2.5Struts1框架配置文件

2.5.1为什么使用Struts1框架配置文件

2.5.2什么是Struts1框架配置文件

2.5.3如何使用Struts1框架配置文件

2.6Struts1框架配置文件中的元素

本章知识体系

第3章Struts1框架的标签库

本章术语

3.1Struts1标签库简介

3.1.1为什么使用标签库

3.1.2什么是标签库

3.1.3如何使用标签库

3.2html标签库

3.2.1基本html标签

3.2.2生成FORM表单和表单域的标签

3.2.3显示错误消息和正常信息的标签

3.3logic标签库

3.3.1用于比较运算的标签

3.3.2用于字符串匹配的标签

3.3.3用于判断内容是否存在的标签

3.3.4用于循环遍历的标签

3.3.5请求转发或重定向标签

3.4bean标签库

3.4.1<bean:define>标签

3.4.2<bean:write>标签

3.4.3<bean:parameter>标签

3.4.4<bean:message>标签

3.4.5<bean:page>标签

本章知识体系

第4章国际化和异常处理

本章术语

4.1Struts1框架资源文件的国际化

4.1.1为什么进行国际化

4.1.2什么是国际化

4.1.3如何对基于Struts1框架的Web应用国际化

4.2Struts1框架的资源文件

4.2.1为什么使用资源文件

4.2.2什么是资源文件

4.2.3如何使用资源文件

4.2.4在资源文件中使用中文

4.3Struts1框架的异常处理

4.3.1为什么使用异常处理

4.3.2什么是错误处理

4.3.3如何使用错误处理

4.3.4使用Struts1框架中的<exception>元素进行异常处理

4.3.5使用ActionMessages对象进行异常处理

本章知识体系

第5章ActionForm Bean入门及高级应用

本章术语

5.1ActionForm Bean的基本应用

5.1.1为什么使用ActionForm

5.1.2什么是ActionForm

5.1.3如何使用ActionForm

5.1.4ActionForm的生命周期

5.2动态ActionForm应用

5.2.1为什么使用动态ActionForm

5.2.2什么是动态ActionForm

5.2.3如何使用动态ActionForm

5.2.4使用MyEclipse集成功能创建动态ActionForm应用

5.2.5动态ActionForm的进一步应用

5.3跨页表单提交

5.3.1为什么使用跨页表单提交

5.3.2如何实现跨页表单提交

5.3.3实现跨页表单提交的示例

本章知识体系

第6章业务组件ActionServlet和Action

本章术语

6.1核心控制器ActionServlet

6.1.1ActionServlet简介

6.1.2init()方法

6.1.3扩展ActionServlet类

6.2RequestProcessor类

6.2.1RequestProcessor简介

6.2.2process()方法

6.2.3扩展RequestProcessor类

6.3Action类

6.3.1Action简介

6.3.2Action类的execute()方法

6.3.3创建自己的Action

6.4Struts1框架内置的常用Action类

6.4.1DispatchAction

6.4.2LookupDispatchAction

6.4.3MappingDispatchAction

6.4.4ForwardAction

6.4.5IncludeAction

6.4.6SwitchAction

本章知识体系

第7章文件的上传与下载

本章术语

7.1为什么使用Struts1框架的文件上传

7.2如何实现文件上传

7.2.1文件上传示例

7.2.2文件上传中存在的问题

7.3多文件上传的实现

7.3.1固定个数文件上传

7.3.2任意个数文件上传

7.4文件的下载

7.4.1DownLoadAction类

7.4.2文件下载的实现

7.4.3如何解决请求参数中的中文乱码问题

7.4.4统计文件下载次数

本章知识体系

第8章插件技术

本章术语

8.1Validator框架

8.1.1为什么使用Validator框架

8.1.2什么是Validator框架

8.1.3如何使用Validator框架

8.1.4Validator框架实例1

8.1.5Validator框架实例2

8.1.6Validator框架实例3

8.1.7Validator框架小结

8.2Tiles框架

8.2.1为什么使用Tiles框架

8.2.2什么是Tiles框架

8.2.3如何使用Tiles框架

8.2.4Tiles框架示例1

8.2.5Tiles框架示例2

8.2.6Tiles定义文件的高级应用

本章知识体系

第9章实战1: 基于Struts1的注册登录系统

本章术语

9.1系统概述

9.1.1系统功能简介

9.1.2系统总体设计

9.2实现JDBC持久层

编写持久化Users类

9.3实现DAO层

9.3.1编写封装数据库操作的辅助类

9.3.2定义DAO层接口

9.3.3编写DAO层实现类

9.4实现Service层(业务逻辑层)

9.4.1定义Service层接口

9.4.2编写Service层实现类

9.5编写JSP文件

9.5.1注册功能的JSP文件

9.5.2登录功能的JSP文件

9.5.3显示用户列表的JSP文件

9.6编写ActionForm Bean

9.7编写控制器Action

9.8编写配置文件

9.8.1编写Struts1核心配置文件

9.8.2编写Validator框架校验的配置文件

本章知识体系

第3部分Hibernate框架

第10章Hibernate框架技术入门

本章术语

10.1Hibernate框架技术简介

10.1.1为什么使用Hibernate框架技术

10.1.2什么是Hibernate框架技术

10.2如何使用Hibernate框架技术

10.2.1在MyEclipse加入对Hibernate框架的支持

10.2.2Hibernate包的下载与安装

10.2.3手动添加对Hibernate框架的支持

10.3使用Hibernate框架的开发体验

10.3.1在Web应用中使用Hibernate框架

10.3.2完成增、删、改操作

10.3.3使用Hibernate框架开发Web应用基本步骤

本章知识体系

第11章Hibernate基础

本章术语

11.1Hibernate映射文件

11.2Hibernate对象标识符

11.2.1为什么使用对象标识符

11.2.2什么是对象标识符

11.2.3如何使用Hibernate对象标识符

11.2.4Hibernate内置的对象标识符生成器

11.3Hibernate映射类型

11.3.1为什么使用Hibernate映射类型

11.3.2什么是Hibernate映射类型

11.3.3如何使用Hibernate映射类型

11.4配置文件解读

11.5Hibernate的Session接口

11.5.1使用Hibernate框架操作数据库的基本步骤

11.5.2HibernateSessionFactory.java类文件

11.6实现DAO层

11.6.1自动生成的DAO层API

11.6.2手动编写DAO层API

本章知识体系

第12章Hibernate框架中的关联映射

本章术语

12.1Hibernate框架的关联映射

12.1.1为什么使用关联映射

12.1.2什么是关联映射

12.2多对一关联和一对多关联

12.2.1单向多对一关联

12.2.2单向一对多关联

12.2.3双向的多对一关联

12.3多对多关联

12.3.1单向多对多关联

12.3.2双向多对多关联

12.4一对一关联

12.4.1基于外键的一对一关联

12.4.2基于主键的一对一关联

12.4.3基于关联表的一对一关联

本章知识体系

第13章Hibernate框架中的查询操作

本章术语

13.1HQL查询介绍

13.1.1为什么使用HQL查询

13.1.2什么是HQL

13.1.3如何使用HQL

13.2HQL语句的结构

13.2.1from子句

13.2.2select子句

13.2.3where子句

13.2.4参数绑定

13.3关联查询

13.4聚集函数

13.5子查询

13.6Criteria查询介绍

13.6.1为什么使用Criteria查询

13.6.2什么是Criteria查询

13.6.3如何使用Criteria查询

13.6.4Criteria查询示例

13.7数据过滤

13.7.1为什么使用数据过滤

13.7.2什么是数据过滤

13.7.3如何使用数据过滤

本章知识体系

第14章Hibernate框架与Struts1框架的整合

本章术语

14.1为什么整合Hibernate框架和Struts1框架

14.2如何整合Hibernate框架和Struts1框架

14.2.1添加Struts1框架的支持

14.2.2添加Hibernate框架的支持

14.2.3整合两个框架

本章知识体系

第15章实战2: 基于Struts1+Hibernate的注册登录系统

本章术语

15.1系统概述

15.1.1系统功能简介

15.1.2系统总体设计

15.2实现Hibernate持久层

15.2.1编写持久化Users类

15.2.2编写Users类的映射文件

15.3实现DAO层

15.3.1定义Hibernate配置文件

15.3.2定义DAO层接口

15.3.3编写DAO层实现类

15.4实现Service层(业务逻辑层)

15.4.1定义Service层接口

15.4.2编写Service层实现类

15.5定义设置请求和响应编码的Filter

15.5.1编写Filter

15.5.2配置Filter

15.6编写JSP文件

15.6.1注册功能的JSP文件

15.6.2登录功能的JSP文件

15.6.3用户列表功能的JSP文件

15.7编写ActionForm Bean

15.8编写控制器Action

15.9编写配置文件

15.9.1编写web.xml配置文件

15.9.2编写Struts1核心配置文件

15.9.3编写Validator框架校验的配置文件

本章知识体系

第4部分Spring框架

第16章Spring框架技术入门

本章术语

16.1Spring框架技术简介

16.1.1为什么使用Spring框架技术

16.1.2什么是Spring框架技术

16.2如何使用Spring框架技术

16.2.1在MyEclipse中加入对Spring框架的支持

16.2.2Spring的下载和安装

16.2.3手动添加对Spring框架的支持

16.3Spring框架的应用体验

16.3.1在Java应用程序中使用Spring框架

16.3.2在Web应用中使用Spring框架

本章知识体系

第17章Spring框架基础

本章术语

17.1控制反转和依赖注入

17.1.1为什么使用控制反转和依赖注入

17.1.2什么是控制反转和依赖注入

17.1.3如何使用依赖注入

17.2依赖注入的实现方式

17.2.1属性注入

17.2.2构造方法注入

17.2.3属性注入和构造方法注入的比较

17.2.4使用配置文件连接Oracle数据库

17.3Spring框架配置文件

17.3.1<beans>元素

17.3.2<bean>元素

17.3.3<constructor-arg>元素

17.3.4<property>元素

17.3.4<ref>元素

17.3.5集合元素

17.4Spring容器

17.4.1BeanFactory接口

17.4.2ApplicationContext接口

本章知识体系

第18章面向切面编程

本章术语

18.1面向切面编程介绍

18.1.1为什么使用AOP

18.1.2什么是AOP

18.1.3如何使用AOP

18.2面向切面编程的基本概念

18.2.1Advice

18.2.2Pointcut和Advisor

18.3使用ProxyFactoryBean创建AOP代理

18.4使用自动代理

18.4.1BeanNameAutoProxyCreator

18.4.2DefaultAdvisorAutoProxyCreator

18.5基于@AspectJ风格的Spring AOP

18.5.1配置对@AspectJ的支持

18.5.2切面声明

18.5.3切入点声明

18.5.4Advice声明

18.5.5基于@AspectJ风格的Spring AOP的示例

本章知识体系

第19章Spring事务管理

本章术语

19.1Spring事务管理实现机制

19.1.1TransactionDefinition

19.1.2PlatformTransactionManager

19.1.3TransactionStatus

19.2编程式事务管理

19.2.1Spring的编程式事务管理概述

19.2.2基于底层API的编程式事务管理

19.2.3基于TransactionTemplate的编程式事务管理

19.3声明式事务管理

19.3.1Spring的声明式事务管理概述

19.3.2基于TransactionProxyFactoryBean的声明式事务管理

19.3.3基于<tx>命名空间的声明式事务管理

19.3.4基于@Transactionl的声明式事务管理

本章知识体系

第20章Spring与Struts1、Hibernate的整合

本章术语

20.1Spring和Struts1的整合

20.1.1为什么要整合Spring和Struts1两个框架

20.1.2如何整合Spring和Struts1两个框架

20.1.3Spring和Struts1整合实例

20.2Spring和Hibernate框架的整合

20.2.1为什么整合Spring和Hibernate两个框架

20.2.2如何整合Spring和Hibernate两个框架

20.2.3Spring和Hibernate整合示例

20.3Spring、Struts1和Hibernate的整合

20.3.1为什么整合三个框架

20.3.2如何整合三个框架

20.3.3三个框架整合示例

本章知识体系

第21章实战3:基于S1SH的注册登录系统

本章术语

21.1系统概述

21.1.1系统功能简介

21.1.2系统总体设计

21.2实现Hibernate持久层

21.2.1编写持久化Users类

21.2.2编写Users类的映射文件

21.3实现DAO层

21.3.1管理SessionFactory

21.3.2定义DAO层接口

21.3.3编写DAO层实现类

21.3.4配置Spring管理DAO的配置文件

21.4实现Service层

21.4.1定义Service层接口

21.4.2编写Service层实现类

21.4.3配置Spring管理Service的配置文件

21.4.4配置Spring管理数据库事务的配置文件

21.5定义设置请求和响应编码的Filter

配置Filter

21.6编写JSP文件

21.6.1注册功能的JSP文件

21.6.2登录功能的JSP文件

21.6.3用户列表功能的JSP文件

21.7编写ActionForm Bean

21.8编写控制器Action

21.8.1编写Action实现类

21.8.2配置Spring管理Struts1 Action的配置文件

21.9编写配置文件

21.9.1编写web.xml配置文件

21.9.2编写Struts1核心配置文件

21.9.3编写Validator框架校验的配置文件

本章知识体系

第5部分Struts2框架

第22章Struts2框架技术入门

本章术语

22.1Struts2框架技术简介

22.1.1为什么使用Struts2框架

22.1.2什么是Struts2框架

22.2如何使用Struts2框架

22.2.1Struts2的下载与安装

22.2.2搭建基于Struts2框架的开发环境

22.3基于Struts2框架的开发体验

22.3.1创建视图资源

22.3.2创建业务控制器Action类

22.3.3创建Struts2的配置文件struts.xml

22.3.4编辑web.xml文件

22.3.5运行测试

22.3.6开发流程总结

本章知识体系

第23章Struts2框架基础

本章术语

23.1Struts2框架体系结构及工作原理

23.1.1Struts2的体系结构

23.1.2Struts2的核心控制器

23.1.3Struts2的工作原理

23.2配置Struts2的核心控制器Filter

23.3配置Struts2框架的属性

23.4Struts2框架的struts.xml配置文件

23.4.1struts.xml文件的基本结构

23.4.2package元素的结构

23.4.3include元素的结构

23.4.4bean元素的结构

23.4.5constant元素的结构

23.5struts-default.xml

23.6struts-plugin.xml

本章知识体系

第24章Struts2框架提高

本章术语

24.1struts.xml配置详解

24.1.1配置包

24.1.2Action的配置

24.1.3配置命名空间

24.1.4配置Result

24.1.5配置bean

24.1.6配置常量

24.1.7配置拦截器

24.1.8配置异常

24.2Struts2框架的Action

24.2.1Struts2框架的Action基类

24.2.2Action类中访问Servlet API

24.3Struts2框架的处理结果

24.3.1Struts2框架支持的视图资源类型

24.3.2dispatcher

24.3.3redirect

24.3.4redirect-action

24.3.5freemarker

24.3.6自定义结果类型

本章知识体系

第25章OGNL、国际化及类型转换

本章术语

25.1OGNL简介

25.1.1为什么使用OGNL

25.1.2什么是 OGNL

25.1.3如何使用OGNL

25.1.4值栈(ValueStack)

25.1.5OGNL表达式

25.1.6OGNL的集合操作

25.1.7lambda表达式

25.2Struts2框架的国际化

25.2.1创建资源文件

25.2.2在资源文件中使用参数

25.2.3在Action中访问国际化资源消息

25.2.4资源文件的类型

25.2.5资源文件的加载顺序

25.3Struts2框架的类型转换

25.3.1为什么使用Struts2框架的类型转换

25.3.2如何使用Struts2框架的类型转换功能

25.3.3Struts2框架的内置类型转换器

25.3.4使用OGNL表达式实现数据类型自动转换

25.3.5Struts2框架对集合类型转换的支持

25.3.6Struts2框架对Map类型转换的支持

25.3.7自定义类型转换器

本章知识体系

第26章Struts2框架的普通标签

本章术语

26.1Struts2标签库简介

26.1.1为什么使用Struts2标签库

26.1.2什么是Struts2标签库

26.1.3如何使用Struts2标签库

26.2数据标签

26.2.1a标签

26.2.2action标签

26.2.3url标签

26.2.4include标签

26.2.5param标签

26.2.6bean标签

26.2.7i18n标签

26.2.8date标签

26.2.9property标签

26.2.10text标签

26.2.11set标签

26.2.12push标签

26.2.13debug标签

26.3控制标签

26.3.1if、elseif和else标签

26.3.2iterator标签

26.3.3generator标签

26.3.4append标签

26.3.5merge标签

26.3.6subset标签

26.3.7sort标签

本章知识体系

第27章Struts2框架的UI标签

本章术语

27.1模板和主题

27.1.1为什么使用模板和主题

27.1.2什么是模板和主题

27.1.3如何使用模板和主题

27.2表单标签的公共属性

27.2.1和模板相关的属性

27.2.2通用属性

27.2.3和JavaScript相关的事件属性

27.2.4和tooltip相关的属性

27.3表单标签

27.3.1form、submit、reset和token标签

27.3.2文本输入标签

27.3.3选项框输入标签

27.3.4转移标签

27.3.5head和label标签

27.4非表单标签

27.4.1输出消息标签

27.4.2component标签

27.4.3div标签

本章知识体系

第28章Struts2框架的拦截器

本章术语

28.1拦截器简介

28.1.1为什么使用拦截器

28.1.2什么是拦截器

28.1.3如何使用拦截器

28.2拦截器的工作原理

28.3Struts2框架的内置拦截器

28.3.1内置拦截器

28.3.2内置拦截器栈

28.3.3内置拦截器的配置

28.4自定义拦截器

28.4.1自定义拦截器类的创建

28.4.2自定义拦截器示例

本章知识体系

第29章Struts2框架的输入校验

本章术语

29.1Struts2框架输入校验简介

29.1.1为什么使用Struts2框架的输入校验

29.1.2什么是Struts2框架的输入校验

29.2编码实现输入校验

29.2.1使用validate()方法进行输入校验

29.2.2使用validateXxx()方法进行输入校验

29.2.3输入校验提示信息的国际化

29.3配置验证文件实现输入校验

29.3.1校验规则文件的结构

29.3.2定义验证规则

29.3.3基于Struts2框架的客户端校验

29.3.4校验规则文件的搜索顺序

29.4Struts2框架的内置校验器

29.4.1类型转换校验器

29.4.2必填校验器

29.4.3必填字符串校验器

29.4.4字符串长度校验器

29.4.5表达式校验器

29.4.6正则表达式校验器

29.4.7电子邮件地址校验器

29.4.8网址校验器

29.4.9字段表达式校验器

29.4.10日期校验器

29.4.11整数校验器

29.4.12双精度浮点数校验器

29.4.13visitor校验器

29.5自定义校验器的开发

29.5.1创建校验器类

29.5.2注册自定义校验器

29.5.3自定义校验器的应用示例

本章知识体系

第30章Struts2框架的文件上传和下载

本章术语

30.1Struts2框架的文件上传

30.1.1为什么使用Struts2框架上传文件

30.1.2文件上传组件

30.1.3如何使用Struts2框架上传文件

30.2完善文件上传的功能

30.2.1设置文件上传到服务器端的路径

30.2.2设置上传文件的大小及类型

30.2.3在配置文件中设置上传文件的属性

30.2.4上传大文件时显示等待页面

30.2.5国际化错误信息

30.3多文件上传

30.3.1使用数组实现多文件上传

30.3.2使用List实现多文件上传

30.4基于Struts2框架的文件下载

30.4.1基于Struts2框架实现文件下载简介

30.4.2基于Struts2框架实现文件下载

30.4.3任意内容类型的文件下载

30.4.4控制文件的下载

30.4.5统计文件的下载次数

本章知识体系

第31章Struts2框架对Ajax的支持

本章术语

31.1Ajax简介

31.1.1为什么使用Ajax

31.1.2什么是Ajax

31.1.3如何在Struts2框架中使用Ajax

31.2Struts2框架的Ajax标签

31.2.1head标签

31.2.2a标签

31.2.3autocompleter标签

31.2.4bind标签

31.2.5datetimepicker标签

31.2.6div标签

31.2.7tabbedPanel标签

31.2.8textarea标签

31.2.9tree标签

31.2.10treenode标签

31.2.11submit标签

31.3Struts2框架对Ajax校验的支持

本章知识体系

第32章实战4: 基于S2SH的注册登录系统

本章术语

32.1系统概述

32.1.1系统功能简介

32.1.2系统总体设计

32.2实现Hibernate持久层

32.2.1编写持久化Users类

32.2.2编写Users类的映射文件

32.3实现DAO层

32.3.1管理SessionFactory

32.3.2定义DAO层接口

32.3.3编写DAO层实现类

32.3.4配置Spring管理DAO的配置文件

32.4实现Service层

32.4.1定义Service层接口

32.4.2编写Service层实现类

32.4.3配置Spring管理Service的配置文件

32.4.4配置Spring管理数据库事务的配置文件

32.5编写JSP文件

32.5.1注册功能的JSP文件

32.5.2登录功能的JSP文件

32.5.3用户列表功能的JSP文件

32.6编写控制器Action

32.6.1编写Action类

32.6.2配置Spring管理Struts2 Action的配置文件

32.7编写配置文件

32.7.1编写web.xml配置文件

32.7.2编写Struts2核心配置文件

32.7.3编写Struts2框架的输入校验的配置文件

本章知识体系

第6部分综 合 实 例

第33章综合实例: 在线相册管理系统

本章术语

33.1系统概述

33.1.1系统功能简介

33.1.2系统总体设计

33.2实现Hibernate持久层

33.2.1编写持久化类

33.2.2编写PO类的映射文件

33.3实现DAO层

33.3.1管理SessionFactory

33.3.2定义DAO层接口

33.3.3编写DAO层实现类

33.3.4配置Spring管理DAO的配置文件

33.4实现Service层

33.4.1定义分页信息帮助类

33.4.2定义Service层接口

33.4.3编写Service层实现类

33.4.4配置Spring管理Service的配置文件

33.4.5配置Spring管理数据库事务的配置文件

33.5分页的自定义标签

33.5.1编写自定义标签的实现类

33.5.2编写自定义标签的描述符

33.6编写JSP文件

33.6.1用户管理功能的JSP文件

33.6.2相册管理功能的JSP文件

33.7编写控制器Action

33.7.1编写用户管理的Action实现类

33.7.2编写相册管理的Action实现类

33.7.3编写Spring管理Struts2 Action的配置文件

33.8编写配置文件

33.8.1编写web.xml配置文件

33.8.2编写Struts2核心配置文件

33.8.3编写Struts2框架的输入校验的配置文件

33.9测试

本章知识体系

参考文献