第1章 Web应用开发概述 1
1.1 Web应用概述 1
1.1.1 Web与Web应用 1
1.1.2 Web应用是如何运行的 3
1.1.3 服务端开发技术对比 4
1.2 使用Java开发Web应用 5
1.2.1 Java语言简介 6
1.2.2 丰富的框架技术 8
1.2.3 Java Web应用的核心技术 9
1.2.4 使用Ajax和jQuery提升用户体验 10
1.3 集成开发环境介绍 11
1.3.1 常用的Java IDE 11
1.3.2 Web服务器汇总 12
1.4 本章小结 13
1.5 思考和练习 14
第2章 Java EE开发及运行环境 15
2.1 下载并安装JDK 15
2.1.1 安装JDK 15
2.1.2 配置环境变量 16
2.2 Tomcat的安装与配置 18
2.2.1 下载并安装Tomcat 18
2.2.2 在Tomcat中部署和卸载应用程序 21
2.3 Eclipse开发环境介绍 24
2.3.1 安装Eclipse 24
2.3.2 使用Eclipse新建Java EE应用 24
2.3.3 在Eclipse中使用Tomcat 27
2.3.4 Eclipse的常用快捷键 33
2.4 本章小结 35
2.5 思考和练习 35
第3章 JSP与Servlet 36
3.1 一个简单的JSP+Servlet应用 36
3.1.1 创建Servlet类 36
3.1.2 部署Servlet 39
3.1.3 创建JSP文件 41
3.2 JSP技术初步 42
3.2.1 JSP的工作原理 42
3.2.2 JSP文件中的内容 43
3.2.3 JSP的内置对象 49
3.2.4 JSP中的中文显示问题 54
3.3 Servlet的开发与应用 60
3.3.1 Servlet的生命周期 60
3.3.2 使用HttpServletRequest 62
3.3.3 使用HttpServletResponse 64
3.3.4 使用过滤器 66
3.3.5 使用监听器 71
3.4 使用jQuery异步请求数据 73
3.4.1 下载jQuery库 74
3.4.2 JSON简介 74
3.4.3 jQuery与Ajax 75
3.5 本章小结 79
3.6 思考和练习 80
第4章 使用JSP标签库 81
4.1 JSP标准标签库(JSTL) 81
4.1.1 下载JSTL安装包 82
4.1.2 表达式语言EL 82
4.1.3 使用核心标签库(C名称空间) 86
4.1.4 使用国际化和格式化标签库(FMT命名空间) 94
4.1.5 使用SQL标签库(SQL名称空间) 96
4.1.6 使用XML标签库(X名称空间) 97
4.1.7 使用JSTL函数 97
4.2 用JSTL开发用户管理系统 98
4.2.1 数据库设计 98
4.2.2 开发与实现 99
4.2.3 部署并测试应用 103
4.3 自定义标签库 104
4.3.1 一个最简单的自定义标签 104
4.3.2 访问标签体 107
4.3.3 自定义标签属性 108
4.4 本章小结 109
4.5 思考和练习 109
第5章 Struts 2框架基础 110
5.1 MVC框架 110
5.1.1 框架内容 110
5.1.2 框架和设计模式的区别 111
5.1.3 MVC的优点 112
5.2 Struts 2基础 113
5.2.1 Struts 2中的MVC 113
5.2.2 Struts 2的工作流程 114
5.2.3 一个简单的Struts 2应用 115
5.2.4 Action详解 118
5.2.5 struts.xml配置详解 119
5.2.6 Struts 2标签库 123
5.3 拦截器 126
5.3.1 拦截器的工作机制 126
5.3.2 Strtus 2内置拦截器 127
5.3.3 自定义拦截器 130
5.4 本章小结 131
5.5 思考和练习 132
第6章 SQL与JDBC 133
6.1 准备关系数据库 133
6.1.1 下载并安装MySQL 133
6.1.2 安装MySQL JDBC驱动 135
6.2 SQL语言简介 135
6.2.1 SQL概述 135
6.2.2 SQL数据类型 136
6.2.3 常有SQL语句 137
6.3 JDBC 141
6.3.1 JDBC概述 142
6.3.2 JDBC驱动程序 143
6.3.3 使用JDBC操作数据库 143
6.3.4 JDBC示例 146
6.4 本章小结 154
6.5 思考和练习 154
第7章 Hibernate框架基础 155
7.1 ORM简介 155
7.1.1 应用ORM的意义 155
7.1.2 流行的ORM框架 156
7.1.3 使用Hibernate ORM的原因 157
7.2 一个简单的Hibernate应用 158
7.2.1 下载Hibernate资源包 158
7.2.2 在Eclipse中引入Hibernate的JAR包 158
7.2.3 使用Hibernate代替JDBC 161
7.3 认识Hibernate ORM 167
7.3.1 Hibernate的框架结构 167
7.3.2 Hibernate配置文件详解 170
7.3.3 使用Hibernate映射文件 171
7.3.4 Hibernate的工作流程 174
7.4 Hibernate查询 175
7.4.1 Hibernate的检索策略 175
7.4.2 Hibernate的关联查询 181
7.4.3 Hibernate的查询方式 189
7.5 本章小结 192
7.6 思考和练习 192
第8章 Hibernate性能优化 194
8.1 Hibernate事务与并发 194
8.1.1 什么是事务 194
8.1.2 Hibernate Session和事务范围 195
8.1.3 并发控制 196
8.2 Hibernate缓存 202
8.2.1 Hibernate缓存概述 202
8.2.2 应用一级缓存 203
8.2.3 应用二级缓存 205
8.2.4 查询缓存 208
8.3 本章小结 210
8.4 思考和练习 211
第9章 Spring框架基础 212
9.1 Spring框架简介 212
9.1.1 概述 212
9.1.2 Spring框架的模块结构 214
9.1.3 Spring 4.x新特性 216
9.2 从Hello World开始 218
9.2.1 下载Spring资源包 218
9.2.2 基于Spring的Hello World 220
9.3 Spring IoC 222
9.3.1 IoC基础 222
9.3.2 IoC容器 223
9.3.3 bean的装配 225
9.4 Spring AOP 232
9.4.1 什么是AOP 232
9.4.2 AOP相关概念 233
9.4.3 使用Spring的通知 233
9.5 本章小结 236
9.6 思考和练习 236
第10章 Spring Web MVC 237
10.1 Spring Web MVC入门 237
10.1.1 Spring Web MVC是什么 237
10.1.2 为什么使用Spring Web MVC 238
10.1.3 Spring Web MVC的工作流程 239
10.1.4 Spring MVC的Hello World程序 240
10.2 深入学习Spring Web MVC 242
10.2.1 启动Spring MVC 242
10.2.2 DispatcherServlet组件类 245
10.2.3 使用@RequestMapping 248
10.2.4 控制器方法的参数 251
10.2.5 控制器方法的返回类型 259
10.2.6 模型与视图 261
10.2.7 Spring MVC的表单标签库 272
10.3 本章小结 277
10.4 思考和练习 277
第11章 Spring MVC整合Hibernate 278
11.1 Spring提供的DAO支持 278
11.1.1 J2EE应用的3层架构 278
11.1.2 Spring的DAO理念 279
11.1.3 使用@Repository注解 280
11.2 Spring MVC整合Hibernate 5 281
11.2.1 新建工程 281
11.2.2 创建实体类 281
11.2.3 创建Dao层 286
11.2.4 创建Service层 291
11.2.5 创建Controller控制器 292
11.2.6 创建JSP页面 294
11.2.7 配置Spring和Hibernate 297
11.2.8 引入aspectjweaver.JAR包 303
11.2.9 项目运行结果 304
11.3 本章小结 305
11.4 思考和练习 305
第12章 创建RESTful Web服务 306
12.1 Web服务概述 306
12.1.1 基于SOAP的Web服务 306
12.1.2 RESTful Web服务 307
12.2 创建RESTful Web服务 313
12.2.1 新建工程 313
12.2.2 创建实体类、DAO层和Service层 314
12.2.3 基于REST的控制器 316
12.2.4 添加配置信息 318
12.3 测试RESTful Web服务 319
12.3.1 使用RESTClient Firefox插件 319
12.3.2 使用REST模板编写REST客户端 323
12.4 本章小结 325
12.5 思考和练习 326
第13章 图书馆管理系统 327
13.1 系统概述 327
13.1.1 项目背景 327
13.1.2 需求分析 327
13.2 数据库设计 328
13.2.1 系统E-R图 328
13.2.2 数据表设计 329
13.3 系统设计与实现 331
13.3.1 搭建系统框架 332
13.3.2 配置Spring与Hibernate 333
13.3.3 创建实体类 334
13.3.4 管理员登录功能 334
13.3.5 管理员管理功能 339
13.3.6 读者管理功能 347
13.3.7 图书管理功能 350
13.3.8 读者登录及操作功能 357
13.4 系统运行结果 360
13.4.1 管理员操作页面 360
13.4.2 读者操作页面 363
13.5 本章小结 364
13.6 思考和练习 364
参考文献 365