首页>参考读物>计算机科学与技术>综合

Java Web从入门到精通(视频实战版)
作者 : 常倬林 等编著
丛书名 : 程序员书库
出版日期 : 2010-12-23
ISBN : 978-7-111-32418-8
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 595
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书本着由浅入深的学习层进方式,分五部分来介绍Struts、Hibernate和Spring框架。第一部分为J2EE开发必须知道的基础知识,介绍了Web应用的发展阶段、JSP、Servlet。第二部分、第三部分和第四部分分别采用了相似的行文结构,条理清楚地讲解了Struts、Hibernate和Spring三种框架所包含的组件。第五部分则通过Struts+Hibernate+Spring解决方案实现一个完整的应用实例。

图书前言

随着Internet的飞速发展,软件开发已由传统的C/S模式逐渐转变为现今流行的B/S模式。而对于Java语言,由于其获得了广大开发人员的认可,所以在该语言世界里出现了各式各样的框架提高开发速度,例如Struts、Hibernate、Spring等框架。
  本书介绍的Struts、Hibernate、Spring,无论在已有项目的选用比例和在开发人员中的认知度上都是最有影响力和号召力的,  Struts+Spring+Hibernate已经成为轻量级开发J2EE的标准配置,被称为SSH经典组合,这也是目前Java Web开发人员必须掌握的技能。
本书的特点
  本书深入浅出地讲解了J2EE经典解决方案:Struts+Spring+Hibernate,从基础的开发工具、基础语法,一直到各个框架所包含的模块功能。本书是一本非常实用的参考书。
  1. 内容翔实,重点突出
  本书站在初学者的角度比较全面地介绍了使用Struts、Hibernate、Spring三个框架的基础用法,使读者对这三个框架有一个初步的认识,并可以单独选用其中某一个框架用于实战。而本书的重点在于如何把这三个框架结合起来用于开发,突出1+1+1>3这个基本理念。
  2. 图文并茂,易于理解
  作为一本写给初学者的编程指导的书,叙述的又是“高屋建瓴”的框架问题,本书力求语言通俗易懂,并提供了大量图解,使读者能由浅入深,在结构清晰的情况下了解框架的内部逻辑,从而灵活应用。
  3. 实例丰富,强调实践
  框架本来就是从实践中不断提升归纳出来的经典程序。本书列举了大量实例进行讲解,通过这些实例,读者可更加深入地理解相关概念和语法,从而达到灵活使用Struts、Spring、Hibernate编写程序的目的。另外,本书重点强调实践性,书中的很多例子都来源于作者的实际开发,通过对这些例子的学习,可以增强读者的动手实践能力。
  4. 代码规范,注释丰富
  本书所涉及程序源代码层次清楚,语句简洁,注释丰富,体现了代码优美的原则,这样从一开始便给读者树立了良好的榜样,有利于读者养成良好的编写代码习惯。
  5. 讲解循序渐进,学习梯度设置科学
  本书强调循序渐进的讲解方式,从前至后,层层推进,步步深入,学习难度适中,学习梯度设置科学,让读者非常容易掌握。本书力求使读者在使用框架的同时,对设计理念有一定的认识。框架在本书叙述中不仅仅是工具,也是很好的教科书,能从中学习到很多东西。
  6. 提供完善的售后服务
  本书提供了论坛:http://www.rzchina.net,读者可以在上面提问交流。另外,论坛上还有一些小的教程、视频动画和各种技术文章,可帮助读者提高开发水平。
本书的内容安排
  本书分为五篇,共24章,章节规划如下所示:
  第一篇(第1~2章)从静态网页说起,引导初学者入门,学习JSP,了解J2EE构架。
  本篇首先回顾了Web应用的发展历程,介绍了当前最热门的三种开发体系。接下来重点介绍了Java开发Web应用的利器JSP与Servlet,使初学者能在很短的时间内入门,产生学习兴趣。此篇也是后文的基础,使对J2EE了解不多、对分层开发完全没有概念的读者对以后着重讲述的Struts、Hibernate、Spring不感到突兀和难于理解,突出了本书“从入门到精通”的特色。
  第二篇(第3~8章)介绍Struts2框架原理和使用方法。
  本篇包括Struts项目的由来和发展,Struts2与前面版本为什么有如此大的差别以及读者关心的问题—为什么要使用Struts。首先通过一个简单的入门程序让读者了解Struts的概况和如何下载安装,接着详细介绍了Struts的原理、使用方法、常用API、高级应用。本篇最后通过一个完整的实例,让读者深入了解Struts在实践中的使用方法,并掌握在MyEclipse中如何用图形工具方便快捷地使用Struts2。
  第三篇(第9~16章)介绍Hibernate框架的原理和使用方法。
  本篇首先介绍如何用Java常规的方法来操作数据库,引出数据持久化的概念,解读什么是O/R映射、为什么要使用Hibernate。并通过一个简单的入门程序让读者了解Hibernate的概况,接着详细介绍了Hibernate的原理、使用方法、常用API和高级应用。本篇最后通过一个完整的实例,让读者深入了解Hibernate在实践中的使用方法,并掌握在MyEclipse中如何用图形工具方便快捷地使用Hibernate。
  第四篇(第17~23章)介绍Spring框架的原理和使用方法。
  本篇首先介绍在Java项目中如何解决越来越复杂的逻辑关系,为什么要将系统分层,解释为什么要使用Spring,并通过一个简单的入门程序让读者了解Spring的概况。之后以Spring两大主线IoC和AOP介绍Spring的使用方法、常用API和高级应用。由单独的一章介绍Spring如何与其他项目集成,这也是本书的重点。本篇最后也是通过一个完整的实例,让读者深入了解Spring在实践中的使用方法,并掌握在MyEclipse中如何用图形工具方便快捷地使用Spring。
  第五篇(第24章)用完整的网上购物系统实例提升读者的实战能力。
  通过网上购物系统的创建,让读者领略Struts+Spring+Hibernate编程的过程,并通过逐步的讲解,详尽地说明了每个过程的技巧及注意事项。
适合阅读本书的读者
  q 希望进入Java Web开发领域的新手。
  q J2EE框架的初学者。
  q 有一定基础但希望提高自己的系统设计水平的读者。
  q 大、中专院校的学生。
本书作者
  本书主要由常倬林编写,其他参与编写和资料整理的人有高会东、王建超、邓薇、黄丽莉、吝晓宁、汪洋、白广元、蔡念光、陈辉、冯彬、刘长江、刘明、沙金、张士强、张洪福、多召英、贾旭、李宽、江宽、陈科、方成林、班晓娟、方中纯、刘兰军、郑雪峰。在此对为本书写作提供帮助的人一并表示感谢!

常倬林
2010年10月

上架指导

计算机\程序设计

封底文字

封底文字待补

作者简介

常倬林 等编著:暂无简介

图书目录

丛书序
前言
第一篇  Java开发Web应用
第1章  背景知识简介 1
1.1  Java语言简介 1
1.1.1  Java语言概述 1
1.1.2  Java语言的特性和优势 2
1.1.3  Java语言的发展现状 3
1.1.4  Java语言的发展前景 3
1.2  Web应用程序开发基本知识 4
1.2.1  Web应用程序的运行原理 4
1.2.2  Web服务器汇总 4
1.2.3  开发一个Web应用程序的简单流程 5
1.3  Web应用程序开发 5
1.3.1  C/S与B/S之争 5
1.3.2  动态页面语言对比 6
1.3.3  .NET与J2EE之争 7
1.4  小结 8
1.5  常见面试题分析 8
1.6  习题 8
第2章  学习JSP 9
2.1  环境准备 9
2.1.1  安装JDK 9
2.1.2  安装Tomcat 10
2.1.3  安装MyEclipse 11
2.2  第一个JSP程序 12
2.2.1  JSP的工作原理 12
2.2.2  JSP目录结构 12
2.2.3  解读web.xml 13
2.2.4  编写第一个JSP 14
2.2.5  发布与测试 15
2.3  JSP的基本语法 16
2.3.1  给JSP加注释 16
2.3.2  在JSP中声明变量和函数 16
2.3.3  用JSP表达式输出结果 17
2.3.4  用JSP脚本实现程序逻辑 17
2.4  编译指令和动作标签 18
2.4.1  使用page指令 18
2.4.2  用include指令插入其他JSP 19
2.4.3  用taglib指令引入标签库 19
2.4.4  用forward标签跳转页面 20
2.4.5  动态插入文件 20
2.4.6  用标签操作JavaBean 20
2.4.7  其他动作标签 22
2.5  JSP的内置对象 23
2.5.1  使用request对象获取请求 23
2.5.2  使用response对象做应答 24
2.5.3  在session对象中保存用户会话 24
2.5.4  application对象、pageContext对象和JSP的范围 25
2.5.5  使用out对象输出 26
2.5.6  在exception对象中处理异常 27
2.5.7  page对象和config对象 27
2.6  Servlet 27
2.6.1  Servlet简介 27
2.6.2  创建Servlet 28
2.6.3  过滤器 30
2.6.4  监听器 31
2.7  自定义JSP标签 32
2.7.1  标签库简介 33
2.7.2  创建标签的处理类 33
2.7.3  创建标签库描述文件 34
2.7.4  使用自定义标签 35
2.7.5  JSP 2.0中新增的标签定义方法 36
2.8  小结 36
2.9  常见面试题分析 37
2.10  习题 37
第二篇  Struts2框架
第3章  Struts2概述 39
3.1  Struts项目简介 39
3.2  Struts2的由来 39
3.3  Web世界中的MVC 40
3.3.1  MVC在Web中的发展 40
3.3.2  前端控制器和页面控制器 41
3.4  为什么要使用Struts2 42
3.4.1  框架的意义 43
3.4.2  Struts2的优势 43
3.5  小结 43
3.6  常见面试题分析 43
3.7  习题 44
第4章  Struts2入门 45
4.1  下载与安装Struts2 45
4.1.1  下载Struts2 45
4.1.2  发布Struts2自带的例子 46
4.2  第一个Struts2程序 46
4.2.1  配置web.xml 46
4.2.2  编写JSP界面 47
4.2.3  编写Action类 47
4.2.4  在配置文件中添加映射 48
4.3  发布与测试 48
4.3.1  发布 48
4.3.2  测试结果 48
4.3.3  分析处理流程 48
4.4  小结 50
4.5  常见面试题分析 50
4.6  习题 51
第5章  Struts2的核心概念 52
5.1  术语概述 52
5.2  Struts2的体系结构 52
5.3  Struts2的配置文件 53
5.3.1  全局配置文件—struts.properties 54
5.3.2  核心配置文件—struts.xml 56
5.3.3  struts.xml的默认实现 56
5.3.4  Velocity模板规则文件 57
5.4  struts.xml的配置 58
5.4.1  Action配置 58
5.4.2  Result配置 59
5.4.3  拦截器配置 60
5.4.4  包配置 61
5.4.5  命名空间配置 61
5.4.6  在struts.xml中定义Bean 63
5.4.7  在struts.xml中使用通配符 63
5.5  实现Action 63
5.5.1  实现Action接口 64
5.5.2  扩展ActionSupport类 64
5.5.3  实现基本校验 64
5.5.4  使用本地的资源文件 68
5.5.5  用ActionContext与Web容器发生联系 72
5.5.6  高级输入 73
5.5.7  使用Model-Driven 78
5.5.8  使用Property-Driven 80
5.6  Result类型介绍 82
5.6.1  内置Result类型 82
5.6.2  默认Result 83
5.6.3  页面跳转 Result 84
5.6.4  创建Action链 84
5.6.5  整合各种View技术 86
5.6.6  自定义Result 87
5.7  拦截器介绍 89
5.7.1  拦截器的原理 89
5.7.2  内置拦截器介绍 91
5.7.3  使用内置拦截器 92
5.7.4  内置拦截器栈介绍 94
5.7.5  自定义拦截器 97
5.8  小结 98
5.9  常见面试题分析 99
5.10  习题 99
第6章  Struts2的View组件 100
6.1  EL简介 100
6.1.1  EL语法 100
6.1.2  EL 变量 101
6.1.3  自动转变类型 102
6.1.4  EL隐含对象(内置对象) 103
6.1.5  EL保留字 106
6.2  使用通用标签 107
6.2.1  标签语法 107
6.2.2  控制标签 108
6.2.3  数据标签 112
6.2.4  杂项标签 116
6.3  使用HTML标签 119
6.3.1  模板和主题 119
6.3.2  通用属性 119
6.3.3  表单标签介绍 121
6.3.4  非表单标签 124
6.3.5  标签实例 124
6.4  OGNL介绍 130
6.4.1  OGNL概述 130
6.4.2  OGNL中的集合 131
6.5  模板和主题的原理与方法 132
6.5.1  模板装载 132
6.5.2  选择主题 132
6.5.3  Struts2 自带主题 133
6.5.4  自定义主题 134
6.6  在Struts中使用FreeMarker 135
6.6.1  最简单的应用 135
6.6.2  模板加载顺序 139
6.6.3  在FTL文件中使用标签 139
6.7  在Struts中使用Velocity 139
6.7.1  最简单的应用 140
6.7.2  变量解析 144
6.7.3  配置Velocity 144
6.7.4  在VM文件中使用标签 144
6.8  在Struts中使用JasperReports 145
6.8.1  准备JasperReports库 145
6.8.2  定义值对象 145
6.8.3  编写action类 147
6.8.4  编写Jasper模板 148
6.8.5  配置struts.xml 150
6.9  小结 152
6.10  常见面试题分析 152
6.11  习题 153
第7章  Struts2的高级应用 154
7.1  类型转换 154
7.1.1  为什么需要类型转换 154
7.1.2  定义类型转换器 154
7.1.3  内建的类型转换支持 155
7.1.4  参数名称的关系 155
7.1.5  空值属性处理 156
7.1.6  Collection和Map支持 156
7.1.7  类型转换错误处理 160
7.2  校验 161
7.2.1  手动校验 161
7.2.2  使用框架校验 161
7.2.3  注册校验器 163
7.2.4  字段校验和非字段校验 164
7.2.5  校验器的短路 165
7.2.6  客户端校验 166
7.2.7  AJAX校验实例 167
7.3  国际化 170
7.3.1  信息的来源 171
7.3.2  资源包搜索顺序 171
7.3.3  添加默认的资源包 171
7.3.4  使用国际化信息 172
7.4  处理上传文件 174
7.4.1  编写文件上传页面 174
7.4.2  构造处理上传的Action 175
7.4.3  编写结果页面 176
7.4.4  更多配置 177
7.4.5  错误处理 178
7.4.6  多文件上传 179
7.5  防止重复提交 182
7.5.1  使用标签增加标记 182
7.5.2  使用TokenInterceptor验证 183
7.5.3  使用TokenSessionStoreInterceptor重新输出结果页面 185
7.6  自动等待页面 186
7.7  控制反转 188
7.7.1  配置Spring 188
7.7.2  实现接口 189
7.7.3  创建Action 190
7.7.4  结果页面 191
7.8  用Annotation配置Struts 192
7.8.1  配置Action 192
7.8.2  配置拦截器 192
7.8.3  配置验证器 193
7.8.4  配置类型转换 195
7.9  小结 197
7.10  常见面试题分析 197
7.11  习题 198
第8章  MyEclipse中的Struts2实战 199
8.1  准备开发环境 199
8.1.1  创建工程 199
8.1.2  引入Struts2的类库 200
8.1.3  创建Struts2的配置文件 201
8.1.4  目录结构 202
8.2  编写代码 203
8.2.1  登录界面 203
8.2.2  登录Action 204
8.2.3  用户CRUD操作 208
8.2.4  添加校验 212
8.2.5  实现国际化 214
8.2.6  使用自定义拦截器 215
8.3  在MyEclipse中发布 216
8.4  小结 217
8.5  常见面试题分析 217
8.6  习题 218
第三篇  Hibernate框架
第9章  Hibernate概述 219
9.1  JDBC简介 219
9.1.1  JDBC提供的工具接口 219
9.1.2  使用JDBC访问数据库 220
9.1.3  持久化层 221
9.1.4  关系型数据库与面向对象的冲突 222
9.2  ORM介绍 223
9.2.1  什么是ORM 223
9.2.2  ORM带来了什么 223
9.2.3  流行的ORM框架简介 224
9.3  Hibernate项目简介 225
9.3.1  Hibernate的由来 225
9.3.2  为什么要选择Hibernate 226
9.4  小结 226
9.5  常见面试题分析 227
9.6  习题 227
第10章  Hibernate入门 228
10.1  安装MySQL数据库 228
10.1.1  下载MySQL 228
10.1.2  安装MySQL 228
10.1.3  配置MySQL 229
10.1.4  MySQL的常用命令 230
10.1.5  下载MySQL的JDBC驱动 231
10.2  下载与安装Hibernate 231
10.2.1  下载Hibernate 231
10.2.2  安装Hibernate 232
10.3  第一个Hibernate程序 232
10.3.1  创建表 233
10.3.2  创建持久化类 233
10.3.3  编写映射文件 234
10.3.4  编写Hibernate配置文件 235
10.3.5  编写测试程序 236
10.3.6  运行测试 237
10.4  小结 237
10.5  常见面试题分析 237
10.6  习题 238
第11章  Hibernate 基础 240
11.1  基本概念 240
11.1.1  体系结构 240
11.1.2  持久化类 241
11.1.3  实例的状态 244
11.2  配置Hibernate 245
11.2.1  数据库连接配置 246
11.2.2  全局属性配置 247
11.2.3  连接池配置 247
11.2.4  使用其他配置方式 248
11.3  Hibernate核心类 248
11.3.1  Configuration类 248
11.3.2  SessionFactory类 249
11.3.3  Session类 250
11.3.4  Query和Criteria类 250
11.3.5  Transaction接口 251
11.4  通过Session完成基本操作 251
11.4.1  保存数据 251
11.4.2  加载数据 253
11.4.3  更新数据 253
11.4.4  saveOrUpdate方法 254
11.4.5  删除数据 254
11.4.6  缓存 255
11.5  小结 256
11.6  常见面试题分析 256
11.7  习题 257
第12章  Hibernate的O/R映射 258
12.1  映射定义 258
12.1.1  元素介绍 259
12.1.2  元素介绍 259
12.1.3  元素介绍 261
12.1.4  元素介绍 262
12.1.5  其他属性 263
12.2  映射对象标识符 264
12.2.1  标识符的含义 264
12.2.2  内置生成器介绍 265
12.2.3  Hibernate的内置标识符生成器的用法 266
12.2.4  映射自然主键 268
12.2.5  复合自然主键 269
12.3  Hibernate的类型 270
12.3.1  Java基本值类型的Hibernate映射 271
12.3.2  Java时间和日期类型的Hibernate映射类型 271
12.3.3  Java大对象类型的Hibernate映射类型 271
12.3.4  JDK自带的Java类的Hibernate映射类型 272
12.3.5  自定义值类型 273
12.4  小结 276
12.5  常见面试题分析 276
12.6  习题 277
第13章  复杂映射关系 278
13.1  关联关系映射 278
13.1.1  多对一 278
13.1.2  一对一 280
13.1.3  一对多 281
13.1.4  双向关联 281
13.1.5  双向一对一 283
13.1.6  使用连接表 283
13.1.7  多对多 285
13.1.8  完整实例 287
13.2  集合类映射 291
13.2.1  持久类中的集合类 291
13.2.2  映射集合 292
13.2.3  映射外键 293
13.2.4  映射索引 294
13.2.5  集合类排序 294
13.2.6  完整的Map实例 295
13.3  组件映射 298
13.3.1  依赖对象 298
13.3.2  在集合中出现的依赖对象 302
13.3.3  组件作为联合标识符 303
13.3.4  动态组件 305
13.4  继承关系映射 305
13.4.1  所有的类同在一张表 305
13.4.2  每个子类一张表 307
13.4.3  每个具体类一张表 309
13.5  小结 311
13.6  常见面试题分析 311
13.7  习题 312
第14章  用Hibernate检索数据 313
14.1  查询基础 313
14.1.1  执行查询 313
14.1.2  用iterate()方法迭代查询结果 314
14.1.3  指定绑定参数 314
14.1.4  用Hibernate简单分页 315
14.1.5  可滚动遍历 315
14.2  HQL语句详解 316
14.2.1  HQL基础 316
14.2.2  用from子句指定数据表 317
14.2.3  用select子句查询数据 318
14.2.4  HQL中的聚集函数 319
14.2.5  多态查询 319
14.2.6  用where子句添加查询条件 319
14.2.7  查询条件中的表达式 320
14.2.8  用order by子句排序 323
14.2.9  用group by 子句分组 323
14.2.10  HQL的子查询 324
14.2.11  用fetch关键字延迟加载集合 324
14.2.12  将HQL语句放入配置文件中 324
14.3  条件查询 325
14.3.1  添加查询条件 326
14.3.2  结果集排序 327
14.3.3  条件查询中的关联关系 327
14.3.4  使用样例查询 328
14.3.5  离线查询和子查询 329
14.4  直接使用SQL 329
14.4.1  使用SQL查询 329
14.4.2  将SQL语句放入配置文件中 331
14.4.3  调用存储过程 332
14.5  数据过滤 334
14.6  小结 337
14.7  常见面试题分析 337
14.8  习题 337
第15章  Hibernate高级应用 338
15.1  批量处理 338
15.1.1  及时清理session缓冲区 338
15.1.2  使用无状态session接口 339
15.1.3  使用HQL的批量语句 340
15.2  事务与并发处理 341
15.2.1  事务简介 342
15.2.2  使用JDBC事务 342
15.2.3  使用JTA事务 344
15.2.4  数据操作的异常处理 344
15.2.5  使用悲观锁 345
15.2.6  使用乐观锁 346
15.3  延迟加载 347
15.3.1  实体对象的延迟加载 347
15.3.2  集合类型的延迟加载 347
15.3.3  属性的延迟加载 350
15.4  缓存管理 350
15.4.1  什么是缓存 351
15.4.2  Hibernate自带的一级缓存 351
15.4.3  二级缓存的定义 352
15.4.4  常用的缓存插件 352
15.4.5  如何使用二级缓存 352
15.5  事件机制 357
15.5.1  拦截器 357
15.5.2  事件系统 361
15.6  使用注释配置Hibernate 365
15.6.1  在创建session工厂时指定Annotation 366
15.6.2  使用注释 366
15.6.3  给文件中的HQL加注释 369
15.7  小结 369
15.8  常见面试题分析 369
15.9  习题 370
第16章  MyEclipse中的Hibernate3实战 371
16.1  环境介绍 371
16.1.1  数据库连接工具 371
16.1.2  创建Hibernate工程 372
16.1.3  生成持久化类 374
16.1.4  HQL编辑器 376
16.2  代码说明 377
16.2.1  配置文件 377
16.2.2  SessionFactory 378
16.2.3  数据脚本 380
16.2.4  持久化类和映射文件 381
16.2.5  DAO类 384
16.3  测试 388
16.4  小结 390
16.5  常见面试题分析 390
16.6  习题 390
第四篇  Spring框架
第17章  Spring概述 391
17.1  Spring简介 391
17.1.1  Spring项目历史 391
17.1.2  Spring的由来 391
17.1.3  Spring2.5带来的新特性 392
17.2  Spring的基本概念 392
17.2.1  Spring的组成结构 393
17.2.2  什么是IoC 394
17.2.3  什么是AOP 395
17.3  为什么要使用Spring 395
17.3.1  何谓轻量级 396
17.3.2  Spring带来了什么 396
17.3.3  Spring的优势 396
17.3.4  其他轻量级容器 397
17.4  小结 397
17.5  常见面试题分析 397
17.6  习题 398
第18章  Spring入门 399
18.1  下载与安装Spring 399
18.1.1  下载Spring 399
18.1.2  安装Spring 400
18.2  第一个Spring程序 401
18.2.1  IoC示例 401
18.2.2  AOP示例 403
18.3  小结 406
18.4  常见面试题分析 407
18.5  习题 407
第19章  Spring的IoC 408
19.1  Bean工厂 408
19.1.1  创建Bean工厂 408
19.1.2  使用多个文件 409
19.1.3  获取Bean 409
19.1.4  BeanFactory的其他方法 410
19.2  配置Bean 411
19.2.1  Bean的定义 411
19.2.2  Bean命名约定 411
19.2.3  Bean的别名 412
19.3  依赖 412
19.3.1  setter注入 412
19.3.2  构造函数注入 414
19.3.3  引用其他的Bean(协作者) 415
19.3.4  使用depends-on 416
19.3.5  注入集合类 416
19.3.6  自动装配 419
19.4  Bean的特性 422
19.4.1  Bean的作用域 422
19.4.2  改变Bean的行为 422
19.4.3  Bean的生命周期 423
19.5  利用ApplicationContext 425
19.5.1  利用MessageSource实现国际化 425
19.5.2  事件处理 426
19.5.3  底层资源的访问 428
19.5.4  延迟初始化Bean 429
19.5.5  ApplicationContext在Web应用中的实例化 429
19.6  使用注释定义IoC(2.5新增) 430
19.6.1  用例介绍 430
19.6.2  使用@Autowired注释 431
19.6.3  在setter方法上使用注释 432
19.6.4  在构造函数中使用注释 432
19.6.5  当出现多个匹配情况时的处理 433
19.6.6  使用JSR-250的注释 433
19.6.7  彻底摆脱配置文件 434
19.7  小结 435
19.8  常见面试题分析 435
19.9  习题 437
第20章  Spring的AOP 438
20.1  Spring AOP简介 438
20.1.1  AOP的概念 438
20.1.2  AOP的术语 439
20.1.3  Spring的AOP有何特点 440
20.1.4  Spring AOP的功能和目标 441
20.2  用@AspectJ配置AOP 441
20.2.1  启用@AspectJ支持 441
20.2.2  声明一个切面 442
20.2.3  声明一个切入点 442
20.2.4  合并切入点表达式 443
20.2.5  声明通知 444
20.2.6  通知的参数 448
20.2.7  使用引入来定义接口 449
20.3  用XML方式配置AOP 450
20.3.1  声明一个切面 450
20.3.2  声明一个切入点 450
20.3.3  声明通知 451
20.3.4  通知的参数 453
20.3.5  使用引入 454
20.3.6  使用@AspectJ还是XML 454
20.4  Spring 2.0以前的AOP 455
20.4.1  声明切面 455
20.4.2  创建通知 456
20.4.3  配置文件 457
20.4.4  运行实例 457
20.5  小结 459
20.6  常见面试题分析 459
20.7  习题 460
第21章  Spring 的MVC框架 461
21.1  Spring MVC简介 461
21.1.1  Spring MVC的结构 461
21.1.2  Spring Web MVC框架的特点 462
21.2  DispatcherServlet的功能 463
21.2.1  在Web服务器中配置DispatcherServlet 463
21.2.2  加载Bean配置文件 464
21.2.3  Spring Web应用的上下文 464
21.3  控制器 465
21.3.1  基类AbstractController 465
21.3.2  其他实用的控制器 466
21.4  处理器映射 466
21.5  视图解析器 468
21.6  Spring对视图的支持 469
21.6.1  Spring的标签库 469
21.6.2  Spring的主题 471
21.7  MVC的完整实例 472
21.7.1  配置web.xml 472
21.7.2  创建Controller 472
21.7.3  视图解析器 475
21.7.4  JSP页面 476
21.7.5  发布与测试 478
21.8  用注释驱动Spring MVC(2.5新增) 479
21.8.1  基于注释的Controller 479
21.8.2  使注释生效 480
21.9  小结 480
21.10  常见面试题分析 481
21.11  习题 481
第22章  用Spring整合其他应用 482
22.1  集成Struts 482
22.1.1  概述 482
22.1.2  添加plugin包 483
22.1.3  修改web.xml文件 483
22.1.4  把Struts与Spring的配置文件对应起来 484
22.1.5  高级选项 485
22.2  集成Struts1.x 485
22.2.1  装载应用程序环境 485
22.2.2  使用 Spring 的 ActionSupport 486
22.2.3  将动作管理委托给Spring 487
22.3  Spring下的远程访问 489
22.3.1  访问RMI 489
22.3.2  使用JAX-RPC的Web Service 491
22.3.3  发送电子邮件 493
22.3.4  其他远程访问 494
22.4  简化EJB的访问 494
22.4.1  用传统方式访问EJB 494
22.4.2  用Spring访问EJB 495
22.5  Spring中的定时调度 496
22.5.1  创建定制的timer 496
22.5.2  直接调度JavaBean 498
22.6  Spring中的线程池 498
22.6.1  使用TaskExecutor接口 498
22.6.2  Spring自带的TaskExecutor实现 499
22.7  事务管理 500
22.7.1  编程式事务管理 500
22.7.2  声明式事务管理 502
22.8  使用JDBC进行数据访问 504
22.8.1  JdbcTemplate类 504
22.8.2  DataSource接口 505
22.8.3  执行SQL语句 505
22.8.4  执行查询 506
22.8.5  更新数据库 507
22.9  集成Hibernate 508
22.9.1  简介 508
22.9.2  在Spring的application context中创建SessionFactory 508
22.9.3  使用HibernateTemplate 510
22.9.4  使用HibernateDaoSupport类 511
22.9.5  使用编程式的事务 511
22.9.6  使用声明式的事务 512
22.10  小结 514
22.11  常见面试题分析 514
22.12  习题 515
第23章  MyEclipse中的Spring实战 516
23.1  环境介绍 516
23.1.1  插件的下载与安装 516
23.1.2  创建Spring工程 516
23.1.3  利用向导创建Spring的Bean 519
23.1.4  其他支持 520
23.2  代码说明 520
23.2.1  在Spring中给Hibernate配置数据源 521
23.2.2  持久化类和映射文件 522
23.2.3  DAO类 524
23.2.4  添加事务管理 525
23.3  测试 526
23.4  小结 528
23.5  常见面试题分析 528
23.6  习题 528
第五篇  项 目 实 战
第24章  Struts+Spring+Hibernate网上购物系统 531
24.1  系统概述 531
24.2  系统总体设计 532
24.2.1  领域模型设计 532
24.2.2  业务逻辑设计 533
24.2.3  界面设计 533
24.2.4  其他设计 535
24.3  持久层设计 537
24.3.1  数据库设计 537
24.3.2  Hibernate映射策略设计 538
24.3.3  Hibernate数据源的配置 543
24.3.4  DAO设计 544
24.4  业务逻辑组织 546
24.4.1  用例分析及实现 546
24.4.2  使用Spring声明式事务 551
24.5  用Struts调用业务层并展示信息 553
24.5.1  Action与ActionForm的设计 553
24.5.2  使用JSP+JSTL+EL展示信息 559
24.6  其他功能实现 569
24.6.1  用Constants类定义常量 570
24.6.2  用过滤器防止用户非法访问后台 570
24.7  小结 571

教学资源推荐
作者: 卢红 王三武 黄继雄 主编   吴飞 徐瑾 副主编
作者: 周爱武 汪海威 肖云 编著
参考读物推荐
作者: [美]提尔塔吉奥蒂·萨卡(Tirthajyoti Sarkar) [印度]舒布哈迪普·罗伊乔杜里(Shubhadeep Roychowdhury)著
作者: [美]马尔奇·哈弗贝克(Marijn Haverbeke) 著
作者: 李冰 刘富强 王嘉男 等编著