第1章 Web应用开发 1
1.1 软件开发架构 1
1.2 Web应用的发展 4
1.2.1 Web技术的发展 4
1.2.2 Model 1和Model 2 6
1.2.3 MVC 7
1.2.4 Struts:基于MVC的坚固框架 8
1.3 J2EE轻量级框架Struts+Spring+Hibernate 15
1.3.1 轻量级J2EE架构技术 15
1.3.2 认识SSH 16
1.3.3 SSH框架结构模型 19
1.3.4 SSH架构轻量级Web应用 20
1.4 总结与提高 21
第2章 应用开发环境安装与配置 22
2.1 认识Eclipse 22
2.1.1 Eclipse概述 22
2.1.2 MyEclipse概述 24
2.2 Tomcat 6.0的下载、安装和配置 28
2.2.1 下载、安装Tomcat 28
2.2.2 Tomcat 6.0在MyEclipse中的配置 29
2.2.3 Tomcat在MyEclipse中的设置 30
2.3 第一个Web工程——用户登录程序 30
2.3.1 项目分析与设计 31
2.3.2 新建工程 31
2.3.3 项目实现 33
2.3.4 发布、运行工程 39
2.3.5 相关知识 42
2.3.6 Web工程解析 43
2.4 总结与提高 44
第3章 Struts 2开发入门 45
3.1 从Hello开始学习Struts 2 45
3.1.1 Struts 2工程创建 46
3.1.2 配置webxml文件 49
3.1.3 配置struts.xml文件 50
3.1.4 创建Action类Hello.java 50
3.1.5 新建视图文件Hello.jsp 52
3.1.6 发布运行 52
3.2 带有表单的Hello程序 53
3.3 Struts 2框架核心(用户登录验证) 55
3.3.1 添加过滤器和配置文件 55
3.3.2 创建Action 59
3.3.3 创建视图文件 63
3.3.4 用户注册 66
3.3.5 使用ActionSupport的validate方法验证数据 68
3.4 总结与提高 72
第4章 Struts 2框架拦截器 73
4.1 认识拦截器 73
4.1.1 理解拦截器 73
4.1.2 预定义的拦截器 75
4.1.3 配置拦截器 77
4.1.4 拦截器栈 77
4.1.5 拦截器实例——计算Action执行的时间 78
4.2 使用自定义拦截器 79
4.2.1 自定义拦截器 79
4.2.2 自定义拦截器实例——用户登录验证的拦截 82
4.3 拦截器实例 85
4.3.1 文字过滤拦截器 85
4.3.2 表单提交授权拦截器 88
4.4 总结与提高 92
第5章 类型转换 93
5.1 Struts 2框架对类型转换的支持 93
5.1.1 为什么需要类型转换 93
5.1.2 Struts 2框架内建的类型转换器 95
5.1.3 List集合类型数据类型转换 99
5.2 使用自定义转换器实现类型转换 102
5.2.1 编写类型转换器类 102
5.2.2 类型转换器的配置 104
5.2.3 自定义转换器实例 105
5.2.4 类型转换综合实例 107
5.3 类型转换中的错误处理 111
5.3.1 Struts 2自带异常提示 111
5.3.2 Struts 2局部异常提示属性文件 113
5.4 总结与提高 115
第6章 Struts 2输入校验 116
6.1 使用手动编程实现输入校验 116
6.1.1 使用validate方法进行输入校验 117
6.1.2 使用validateXxx方法进行输入校验 122
6.1.3 Struts 2的输入校验流程 123
6.2 使用Struts 2校验框架实现输入校验 124
6.2.1 Struts 2校验框架 124
6.2.2 运用Struts 2内置的校验器 126
6.2.3 注册表单校验实例 132
6.2.4 注册实例拓展——复合类型验证器 136
6.3 自定义校验器 140
6.3.1 自定义校验器实例 140
6.3.2 自定义校验器实例拓展 143
6.4 总结与提高 147
第7章 国际化 148
7.1 Struts 2国际化 148
7.1.1 什么是国际化 148
7.1.2 Locale类 149
7.1.3 ResourceBundle类 150
7.2 Struts 2对国际化的支持 151
7.2.1 资源包属性文件 151
7.2.2 Action及配置文件 153
7.2.3 Struts 2中加载资源文件的方式 155
7.2.4 用户登录程序的国际化显示 157
7.3 Struts 2的国际化实现 159
7.3.1 Struts 2国际化信息的获取 159
7.3.2 Action的国际化 160
7.3.3 JSP页面的国际化 161
7.3.4 校验的国际化 164
7.4 信息录入国际化实例 165
7.4.1 项目运行结果 165
7.4.2 项目实现 168
7.5 总结与提高 174
第8章 Hibernate数据持久化技术 176
8.1 认识Hibernate 176
8.1.1 ORM与数据持久化 176
8.1.2 什么是Hibernate 178
8.1.3 Hibernate的安装与配置 180
8.1.4 Hibernate核心接口 181
8.2 Hibernate开发关键技术 184
8.2.1 Hibernate开发步骤 184
8.2.2 实体类 185
8.2.3 Hibernate的配置 186
8.3 项目实现——留言板程序 186
8.3.1 项目介绍 186
8.3.2 用MyEclipse Database Explorer管理数据库 188
8.3.3 新建SQL Server数据库 189
8.3.4 新建Web工程并添加Hibernate Capabilities 189
8.3.5 项目实现 191
8.4 使用反向工程快速生成Java POJO类、映射文件和DAO 205
8.4.1 打开MyEclipseDatabase Explorer透视图 205
8.4.2 反向工程设置 205
8.5 总结与提高 207
第9章 Spring技术 208
9.1 认识Spring 208
9.1.1 Spring产生的背景 208
9.1.2 Spring简介 209
9.1.3 Spring开发入门 211
9.2 控制反转(IOC) 217
9.2.1 什么是控制反转 217
9.2.2 控制反转实例 219
9.2.3 DI注入方式 222
9.3 Bean与Spring容器 223
9.3.1 Spring的Bean 223
9.3.2 使用静态工厂方法实例化一个Bean 225
9.3.3 Spring中Bean的生命周期 230
9.4 SpringAOP应用开发 234
9.4.1 认识AOP 234
9.4.2 AOP核心概念 235
9.4.3 AOP入门实例 237
9.5 基于Spring的MVC框架开发 241
9.6 Spring与Struts整合开发 251
9.6.1 整合开发环境部署 251
9.6.2 项目实现 252
9.7 总结与提高 255
第10章 怀听音乐网 256
10.1 系统概述 256
10.1.1 项目背景 256
10.1.2 系统开发运行环境 256
10.2 系统分析与设计 257
10.2.1 功能模块划分 257
10.2.2 数据库设计 258
10.3 配置Hibernate 262
10.3.1 持久化类 262
10.3.2 Hibernate配置文件配置 264
10.4 Spring整合Hibernate 268
10.5 配置文件 270
10.5.1 web.xml 270
10.5.2 Struts配置文件加入Action的Bean定义 272
10.6 项目实现 274
10.6.1 页面视图及流程 274
10.6.2 设计业务层功能 280
10.6.3 开发业务层和DAO层代码 280
10.7 总结与提高 303