目录

第1章  Web应用开发概述	1
1.1 Web应用概述	1
1.1.1 Web与Web应用	2
1.1.2 Web应用是如何运行的	4
1.1.3 服务器端开发技术对比	5
 1.2 使用Java开发Web应用	7
1.2.1 Java语言简介	7
1.2.2 丰富的框架技术	9
1.2.3 Java Web应用的核心技术	10
1.2.4 使用Ajax和jQuery提升用户体验	11
1.3 集成开发环境介绍	12
1.3.1 常用的Java IDE	12
1.3.2 Web服务器汇总	14
 1.4 本章小结	15
 1.5 思考和练习	15
第2章  Java EE开发及运行环境	16
 2.1 下载并安装JDK	16
2.1.1 安装JDK	17
2.1.2 配置环境变量	18
2.1.3 JDK的简单使用	19
 2.2 Tomcat的安装与配置	20
2.2.1 下载并安装Tomcat	20
2.2.2 在Tomcat中部署和卸载应用程序	23
 2.3 Eclipse开发环境介绍	26
2.3.1 安装Eclipse	26
2.3.2 使用Eclipse新建Java EE应用	26
2.3.3 在Eclipse中使用Tomcat	30
2.3.4 Eclipse的常用快捷键	35
 2.4 本章小结	37
 2.5 思考和练习	37
第3章  JSP与Servlet	38
 3.1 一个简单的JSP+Servlet应用	38
3.1.1 创建Servlet类	39
3.1.2 部署Servlet	41
3.1.3 创建JSP文件	43
 3.2 JSP技术初步	44
3.2.1 JSP的工作原理	44
3.2.2 JSP文件中的内容	45
3.2.3 JSP的内置对象	52
3.2.4 JSP中的中文显示问题	58
 3.3 Servlet的开发与应用	63
3.3.1 Servlet的生命周期	63
3.3.2 使用HttpServletRequest	67
3.3.3 使用HttpServletResponse	69
3.3.4 使用过滤器	71
3.3.5 使用监听器	76
 3.4 使用jQuery异步请求数据	79
3.4.1 下载jQuery库	80
3.4.2 jQuery与Ajax	80
 3.5 本章小结	86
 3.6 思考和练习	86
第4章  使用JSP标签库	87
 4.1 JSP标准标签库(JSTL)	87
4.1.1 下载JSTL安装包	88
4.1.2 表达式语言(EL) 	88
4.1.3 使用核心标签库(C名称空间)	92
4.1.4 使用国际化和格式化标签库(FMT命名空间)	101
4.1.5 使用SQL标签库(SQL名称空间)	102
4.1.6 使用XML标签库(X名称空间)	104
4.1.7 使用JSTL函数	104
 4.2 使用JSTL开发用户管理系统	105
4.2.1 数据库设计	105
4.2.2 开发与实现	105
4.2.3 部署并测试应用	109
 4.3 自定义标签库	110
4.3.1 一个最简单的自定义标签	111
4.3.2 访问标签体	114
4.3.3 自定义标签属性	115
 4.4 本章小结	116
 4.5 思考和练习	116
第5章  Struts 2框架基础	117
 5.1 MVC框架	117
5.1.1 框架内容	118
5.1.2 框架和设计模式的区别	119
5.1.3 MVC的优点	120
 5.2 Struts 2基础	120
5.2.1 Struts 2中的MVC	121
5.2.2 Struts 2的工作流程	122
5.2.3 一个简单的Struts 2应用	123
5.2.4 Action详解	126
5.2.5 struts.xml配置详解	127
5.2.6 Struts 2标签库	131
 5.3 拦截器	134
5.3.1 拦截器的工作机制	134
5.3.2 Struts 2内置拦截器	135
5.3.3 自定义拦截器	138
 5.4 本章小结	140
 5.5 思考和练习	140
第6章  SQL与JDBC	141
 6.1 准备关系数据库	141
6.1.1 下载并安装MySQL	141
6.1.2 安装MySQL JDBC驱动	143
 6.2 SQL语言简介	144
6.2.1 SQL概述	144
6.2.2 SQL数据类型	144
6.2.3 常用SQL语句	145
 6.3 JDBC简介	150
6.3.1 JDBC概述	150
6.3.2 JDBC驱动程序	151
6.3.3 使用JDBC操作数据库	152
6.3.4 JDBC示例	155
 6.4 本章小结	163
 6.5 思考和练习	163
第7章  Hibernate框架基础	164
 7.1 ORM简介	164
7.1.1 应用ORM的意义	165
7.1.2 流行的ORM框架	165
7.1.3 使用Hibernate ORM的原因	167
 7.2 一个简单的Hibernate应用	167
7.2.1 下载Hibernate资源包	167
7.2.2 在Eclipse中引入Hibernate的
   JAR包	168
7.2.3 使用Hibernate代替JDBC	171
 7.3 认识Hibernate ORM	176
7.3.1 Hibernate的框架结构	176
7.3.2 Hibernate配置文件详解	179
7.3.3 使用Hibernate映射文件	181
7.3.4 Hibernate的工作流程	183
 7.4 Hibernate查询	184
7.4.1 Hibernate的检索策略	185
7.4.2 Hibernate的关联查询	191
7.4.3 Hibernate的查询方式	199
 7.5 本章小结	202
 7.6 思考和练习	202
第8章  Hibernate性能优化	203
 8.1 Hibernate事务与并发	203
8.1.1 什么是事务	203
8.1.2 Hibernate Session和事务范围	204
8.1.3 并发控制	205
 8.2 Hibernate缓存	212
8.2.1 Hibernate缓存概述	212
8.2.2 应用一级缓存	213
8.2.3 应用二级缓存	214
8.2.4 查询缓存	218
 8.3 本章小结	220
 8.4 思考和练习	220
第9章  Spring框架基础	221
 9.1 Spring框架简介	221
9.1.1 Spring概述	222
9.1.2 Spring框架的模块结构	223
9.1.3 Spring 5.x新特性 	225
 9.2 从Hello World开始	227
9.2.1 下载Spring资源包	227
9.2.2 基于Spring的Hello World	228
 9.3 Spring IoC	230
9.3.1 IoC基础	230
9.3.2 IoC容器	232
9.3.3 bean的装配	233
 9.4 Spring AOP	241
9.4.1 什么是AOP	241
9.4.2 AOP相关概念	241
9.4.3 使用Spring的通知	242
 9.5 本章小结	245
 9.6 思考和练习	245
第10章  Spring Web MVC	246
 10.1 Spring Web MVC入门	246
10.1.1 Spring Web MVC是什么	247
10.1.2 为什么使用Spring Web MVC	247
10.1.3 Spring Web MVC的工作流程	248
10.1.4 Spring MVC的Hello World程序	249
 10.2 深入学习Spring Web MVC	252
10.2.1 启动Spring MVC	252
10.2.2 DispatcherServlet组件类	255
10.2.3 使用@RequestMapping	257
10.2.4 控制器方法的参数	261
10.2.5 控制器方法的返回类型	269
10.2.6 模型与视图	271
10.2.7 Spring MVC的表单标签库	282
 10.3 本章小结	286
 10.4 思考和练习	287
第11章  Spring MVC整合Hibernate	288
 11.1 Spring提供的DAO支持	288
11.1.1 J2EE应用的3层架构	288
11.1.2 Spring的DAO理念	289
11.1.3 使用@Repository注解	290
 11.2 Spring MVC整合Hibernate 5	291
11.2.1 新建工程	291
11.2.2 创建实体类	292
11.2.3 创建Dao层	296
11.2.4 创建Service层	301
11.2.5 创建Controller控制器	303
11.2.6 创建JSP页面	305
11.2.7 配置Spring和Hibernate	307
11.2.8 引入aspectjweaver.JAR包	314
11.2.9 项目运行结果	315
 11.3 本章小结	315
 11.4 思考和练习	315
第12章  RESTful Web服务	316
 12.1 Web服务概述	316
12.1.1 基于SOAP的Web服务	317
12.1.2 RESTful Web服务概述	318
 12.2 创建RESTful Web服务	324
12.2.1 新建工程 	324
12.2.2 创建实体类、DAO层和Service层	325
12.2.3 基于REST的控制器	327
12.2.4 添加配置信息	329
 12.3 测试RESTful Web服务	330
12.3.1 使用RESTClient Firefox插件	330
12.3.2 使用REST模板编写REST客户端	333
 12.4 本章小结	335
 12.5 思考和练习	335
第13章  图书馆管理系统	336
 13.1 系统概述	336
13.1.1 项目背景	336
13.1.2 需求分析	337
 13.2 数据库设计	337
13.2.1 系统E-R图	337
13.2.2 数据表设计	338
 13.3 系统设计与实现	340
13.3.1 搭建系统框架	341
13.3.2 配置Spring与Hibernate	342
13.3.3 创建实体类	343
13.3.4 管理员登录功能	343
13.3.5 管理员管理功能	348
13.3.6 读者管理功能	356
13.3.7 图书管理功能	359
13.3.8 读者登录及操作功能	365
 13.4 系统运行结果	368
13.4.1 管理员操作页面	368
13.4.2 读者操作页面	371
 13.5 本章小结	372
 13.6 思考和练习	372
参考文献	373