首页>参考读物>计算机科学与技术>软件与程序设计

Spring+Spring MVC+MyBatis整合开发实战
作者 : 陈学明 编著
出版日期 : 2020-07-03
ISBN : 978-7-111-65878-8
定价 : 159.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 584
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书从实战入手,通过大量示例介绍了Spring+SpringMVC+MyBatis整合开发的相关内容,提升读者对框架的掌握度和理解度,从而实现对框架会用、用对及精用的目标。本书共18章,分为5篇。第1篇Spring核心框架,涵盖Spring概述、Spring IoC容器初探、Web项目环境搭建与项目创建、Spring IoC容器进阶、基于注解和代码的配置、Spring测试;第2篇Spring MVC框架,涵盖Spring Web MVC概述、数据类型转换、验证与异常处理,以及Spring MVC进阶和测试框架;第3篇数据技术,涵盖数据库与Java数据访问技术、MyBatis基本使用、MyBatis进阶、Spring数据访问与事务管理;第4篇SSM整合开发,涵盖SSM整合概述与SSM整合实例;第5篇高级开发技术,涵盖Spring AOP与MVC拦截器,以及Spring Security框架与多线程。本书适合具备Java基础的SSM初学者和进阶开发人员阅读,也适合Java Web开发工程师阅读;对于探究Spring及Spring Boot框架机制与原理的资深工程师也具有参考意义。

图书特色

广告语:
诚意之作,一线技术专家15年经验的总结。华为、阿里巴巴等知名公司的4位技术专家力荐。系统介绍SSM整合开发,详解500多个知识点示例、1个完整的项目实战案例,即学即用

图书前言

本书写作背景
  Spring自2002年诞生至今,已有近20年的历史,虽然几经变迁,但始终在继续发展和精进。Spring目前由Pivotal维护和开发。Pivotal是PaaS(平台即服务)的领导者,也是消息中间件 RabbitMQ的缔造者。12306的流量销峰平台Gemfire,也是该公司的手笔。另外,其与知名的NoSQL数据库Redis也渊源颇深。
  Spring简化了应用系统的开发,IoC和AOP是它的两大核心理念。IoC容器用来管理组件和注入依赖,AOP进一步降低了模块的耦合性,提高了重用性和开发效率。Spring从最初搭配Structs开发Java Web应用,到Spring MVC的横空出世和成熟,始终保持着良好的扩展性和兼容性。除了默认支持的第三方库之外,其他库也容易实现与Spring的整合,这其中就包括MyBatis。相比Hibernate的全自动ORM框架,MyBatis更加灵活和有弹性,其性能也更容易得到提升。
  本书从实战入手,在使用框架开发的基础上,对框架的原理和实现机制做了深入探讨和呈现,让读者知其然也知其所以然。“上士闻道,勤而行之”,技术学习最快捷的方式是在理解的基础上进行实战,在实战的基础上提升对框架的掌握度和理解度,从而实现对框架会用、用对及精用的目标。
本书特色
  1.从简到繁,由浅入深
  本书按照Spring、Spring MVC、MyBatis及SSM整合的逻辑顺序组织章节,对书中的知识点从简单示例入手,进而展开详细的介绍和对内部机制的解密。
  2.给出简单、细致、详尽的示例代码,方便读者快速学习和理解
  本书立足实战,书中每个章节的知识点都配备了简单的示例,可以辅助读者快速入门和理解。本书中的示例代码与章节一一对应,方便读者学习和查阅。
  3.全面涵盖Java Web开发技术,并对Java底层技术及其他主流库和框架做了介绍
  本书主要对Spring、Spring MVC和MyBatis及其整合进行了介绍。另外,本书还对Java Web的相关技术和框架进行了介绍,包括Java注解、单元测试(JUnit和TestNG)、Java反射与代理、Java多线程及ThreadLocal、HTTP、Servlet、REST与主流的JSON库(Json-lib、Gson、Fastjson和Jackson)、Commons FileUpload、数据库连接池(C3P0、DBCP2)、Spring与Hibernate整合以及Spring与JPA整合等。
  4.注重对原理和机制进行解析,并通过简单的逻辑图示进行展示
  本书注重对框架内部的实现机制和原理进行解密,包括DispatcherServlet技术细节、MyBatis运作原理、AOP实现机制及Spring Security解密等。对于这些内容,作者通过逻辑关系图或流程图进行简化和呈现,便于读者更加直观地理解。
  5.项目案例典型,实战性强,可作为实际项目的模板
  本书介绍了一个源自实际需求的项目实例,从需求分析开始,完整地呈现了整个项目的分析、设计、架构和开发过程。该项目架构可以作为SSM架构的模板,同类型的项目可以在此之上继续开发。
本书内容
  第1篇 Spring核心框架(第1~6章)
  本篇首先对Spring框架的发展史、体系和生态进行介绍,从宏观上整体俯瞰Spring,然后对Spring的核心框架进行了介绍,具体包括IoC/DI概念浅析、容器配置与初始化、Bean实例化的多种方式、Bean配置属性、依赖注入及前置依赖和循环依赖配置、容器扩展点等。本篇还对Java注解、Spring容器注解及Java代码配置等进行了介绍,另外还介绍了Java测试框架及Spring测试框架等内容。
  第2篇 Spring MVC框架(第7~10章)
  本篇首先从HTTP和Java Web开始讲起,对Spring MVC的技术细节进行了剖析,包括中央控制器、处理器映射器、处理器适配器及视图解析器等;然后在此基础上对Spring MVC的配置和注解开发进行了介绍,并对MVC项目的类型转换、数据绑定、数据验证和MVC异常处理进行了专题介绍;最后在进阶部分介绍了Spring父子容器、REST风格服务、JSON格式数据返回及文件上传等内容。
  第3篇 数据技术(第11~14章)
  本篇首先介绍了关系型数据库、MySQL与Java数据访问技术、ORM框架、JPA统一接口等内容,然后重点介绍了MyBatis核心接口、XML全局配置及映射配置,并介绍了MyBatis的内部运作、动态SQL、缓存、SQL构造器及基于注解的开发方式等。另外,本篇还对Spring的数据访问技术做了介绍,包括Spring JDBC模板类、Spring DAO、Spring整合ORM及JPA、Spring事务管理等。
  第4篇 SSM整合开发(第15、16章)
  本篇首先介绍了Spring与Spring MVC,以及Spring与MyBatis整合开发的相关内容,并对异常处理和日志的整合方式进行了分析,然后以一个报表项目为案例,对项目的需求分析、系统分析、系统设计、系统框架搭建及代码开发等整个流程进行了全面介绍。
  第5篇 高级开发技术(第17、18章)
  本篇主要对Spring AOP框架和Spring Security框架进行了介绍。首先在对Java代理和AspectJ框架介绍的基础上对Spring AOP进行了剖析,并对MVC项目中的拦截器和过滤器进行了比较;然后对Spring Security用户请求和调用方法两个层级的用户认证和授权开发进行了介绍,并对多线程的相关内容及其在Spring框架中的应用进行了介绍。
本书配套资源
  为了方便读者阅读,本书提供以下配套资源:
* 书中用到的各种工具;
* 书中所有示例的源代码;
* 书中项目案例的源代码及相关设计文档。
  这些配套资源需要读者自行下载。请在机工新阅读网站(www.cmpreading.com)搜索到本书,然后单击“资料下载”按钮,即可在本书页面上找到配书资源下载链接进行下载。
本书读者对象
* 需要全面学习Spring、Spring MVC及MyBatis整合开发的人员;
* Spring、Spring Web及Spring Boot开发人员;
* Java Web系统架构与设计师;
* Java EE开发工程师;
* Java系统分析师与设计师;
* 希望提高项目开发水平的人员;
* 专业培训机构的学员;
* 软件开发项目经理。
阅读本书的建议
* 没有SSM框架基础的读者,建议从第1章顺次阅读并演练每一个示例;
* 有一定SSM框架基础的读者,可以根据实际情况略去基础部分的学习和演练;
* 对于原理和实现机制及部分进阶内容可以多思考、多理解;
* 先阅读和理解基础理论并演练相关示例,再参考提供的配套示例代码自行开发和测试,这样学习效果会更好,理解也会更加深刻。
勘误与售后支持
  由于写作时间所限,书中可能还存在错漏和不严谨之处,恳请同行专家和各位读者不吝指正。阅读本书时若有疑问,请发电子邮件到hzbook2017@163.com。对于同行专家和读者提出的问题笔者会一一核实,并在后续加印时改正这些错漏。

上架指导

计算机\程序设计

封底文字

业内赞誉:

本书作者在企业级应用开发领域有很深的造诣和丰富的项目经验。他编写的这本书对Java Web开发人员有较高的参考价值,是一本很好的Spring核心框架整合开发图书。本书对SSM整合开发技术做了系统讲解,并对Spring核心源码和框架原理做了深入分析。通过阅读本书,相信读者会对SSM整合开发有更加深入的理解。
——飞尔智能研发中心总经理 操灿

SSM框架是企业级应用开发利器,尤其是在互联网企业级应用开发中,其使用更为普遍。本书从基础理论、案例解析、项目实战和进阶技术等角度,系统地介绍了SSM整合开发的相关知识,相信会给相关技术人员和学习者带来启发和帮助。
——华为技术有限公司项目经理 李翔

多年前曾与学明共事,那时他就在用Spring进行开发。如今,他依然专注于企业级开发,而且还将这些年的技术积累总结成书。本书内容全面、系统、深入,是一本用心之作,值得每一位从事企业级开发的人员阅读。
——阿里巴巴高级技术专家 徐嘉

不同于市面上那些内容艰涩、实用性不强、讲解不够深入的图书,本书抽丝剥茧地剖析SSM框架的理论知识,并将其应用于开发实践中,而且在实践中引出了多个核心技术点,可以说是“干货”满满。本书作者不仅是我的同学,而且毕业后还和我共事过一段时间。如今,他已经是一位具有15年开发经验的资深软件开发专家,熟悉Java Web开发的各种技术流派和平台。他笔耕不辍,常年在工作之余坚持写技术博客,分享自己的心得,大量的读者因此而受益匪浅。
本书内容涵盖Spring的方方面面,如Spring IoC容器、Spring MVC框架、Spring AOP和数据库等,书中基于Spring技术栈给出了多个示例帮助读者理解。阅读本书,有助于加深读者对Spring技术栈的理解,可以提高读者的SSM整合开发水平。
——上海楷登电子科技有限公司首席软件工程师 徐良

图书目录

前言
第1篇 Spring核心框架
第1章 Spring概述 2
1.1 Spring的由来与发展 2
1.1.1 Java简史 3
1.1.2 Spring编年简史 5
1.2 Spring的概念及理念 6
1.3 Spring框架体系结构 7
1.4 Spring生态圈 10
1.5 Spring资源与社区 12
1.6 Spring综述 13
第2章 Spring IoC容器初探 14
2.1 Spring IoC容器及相关概念 14
2.1.1 组件、框架和容器 14
2.1.2 JavaBean、POJO和EJB简介 16
2.1.3 IoC与DI简介 17
2.1.4 Spring与EJB简介 19
2.2 Spring容器初始化 20
2.2.1 BeanFactory与ApplicationContext 20
2.2.2 ApplicationContext初始化方式 21
2.2.3 Spring基于XML的配置文件结构 23
2.2.4 Bean的配置方式 24
2.2.5 哪些类需要配置成Bean 25
2.2.6 容器的关闭 25
2.2.7 Spring容器的定义 26
2.3 依赖注入与方式 26
2.3.1 构造函数注入 27
2.3.2 设置值注入 28  
第3章 Web项目环境搭建与项目创建 30
3.1 环境与前置准备 30
3.1.1 JDK的下载与安装 30
3.1.2 Eclipse的下载与安装 32
3.1.3 Tomcat的下载与安装 33
3.1.4 MySQL的下载与安装 34
3.1.5 Maven的下载与安装 35
3.2 基于Maven和Eclipse建立项目 36
3.2.1 在Eclipse中创建Maven Web项目 37
3.2.2 将Maven创建的Web项目导入Eclipse中 38
3.2.3 Eclipse编译器和项目特性修改 39
3.3 Spring框架导入与项目目录 41
3.3.1 Spring核心包及相关依赖包的导入 41
3.3.2 项目目录结构及创建 42
3.4 简单的完整实例 43
第4章 Spring IoC容器进阶 46
4.1 Bean实例化的更多方式 46
4.1.1 静态内部类 46
4.1.2 静态工厂方法 47
4.1.3 实例工厂方法 47
4.2 Bean的配置属性 48
4.2.1 Bean的作用域配置 49
4.2.2 Bean初始化或销毁的生命周期回调 50
4.2.3 懒加载Bean 51
4.2.4 Bean定义的继承 52
4.3 依赖注入的配置 53
4.3.1 多个对象的依赖注入 53
4.3.2 简单类型的依赖注入 55
4.3.3 集合类型的依赖注入 58
4.3.4 内部Bean的依赖注入 59
4.3.5 Bean方法的替换 59
4.3.6 自动装配 60
4.4 特殊的依赖配置 61
4.4.1 depends-on前置依赖配置 61
4.4.2 方法注入—不同作用域Bean的依赖配置 62
4.4.3 循环依赖的解决 63
4.5 XML配置进阶 64
4.5.1 依赖注入配置的简写 64
4.5.2 多XML配置文件 64
4.6 容器与Bean扩展点 65
4.6.1 全局与容器生命周期回调 65
4.6.2 容器加载定义扩展—BeanFactoryPostProcessor 66
4.6.3 容器扩展点—BeanPostProcessor 68
4.6.4 Aware接口—获取容器资源 68
4.7 Spring IoC容器综述 70
第5章 基于注解和代码的配置 73
5.1 Java注解 73
5.1.1 Java基本注解 73
5.1.2 Java注解标准 75
5.2 Spring支持的注解类型与开启方式 76
5.2.1 Spring支持的注解类型 76
5.2.2 Spring注解功能的开启方式 77
5.3 Spring支持的Java标准注解 78
5.3.1 @PostConstruct和@PreDestroy 78
5.3.2 @Named—组件注解 78
5.3.3 @Resource—依赖注入注解 79
5.3.4 @Inject—依赖注入 79
5.4 Spring容器配置注解 80
5.4.1 @Required—依赖项检查 80
5.4.2 @Autowired—依赖对象的自动装配 81
5.4.3 @Component—组件注解 82
5.4.4 @Bean—方法层级的组件注解 85
5.5 自动装配的更多介绍 86
5.5.1 自动装配的required配置 86
5.5.2 自动装配的顺序和选择 86
5.5.3 自动装配的使用 89
5.6 基于Java代码的配置 89
5.6.1 @Configuration——配置类注解 90
5.6.2 Java代码配置的容器初始化 90
5.6.3 @ComponentScan—组件扫描注解 91
5.6.4 @Import—配置类导入注解 92
5.7 容器注解汇总 92
第6章 Spring测试 94
6.1 关于测试 94
6.1.1 单元测试 95
6.1.2 集成测试 97
6.1.3 测试的一些概念 97
6.2 Java测试框架 98
6.2.1 JUnit单元测试框架 98
6.2.2 JUnit批量测试 102
6.2.3 JUnit运行器 103
6.2.4 JUnit 4与JUnit 5的比较 104
6.2.5 TestNG简介及与JUnit的比较 105
6.3 基于Spring的测试 106
6.3.1 JUnit中加入Spring容器进行测试 106
6.3.2 Spring测试模块 108
6.3.3 Spring测试模块对单元测试的支持 109
6.3.4 Spring测试框架 111
6.4 Spring测试注解 116
6.4.1 Spring测试专用的注解 116
6.4.2 测试支持的标准注解 119
6.4.3 基于JUnit 4支持的注解 121
6.4.4 基于JUnit Jupiter(JUnit 5)支持的注解 123
6.5 测试框架注解汇总 125
第2篇 Spring MVC框架
第7章 Spring Web MVC概述 128
7.1 HTTP Web基础知识 128
7.1.1 HTML与HTTP 128
7.1.2 HTTP请求类型 129
7.1.3 MIME类型 129
7.1.4 状态码 130
7.2 Java Web开发 131
7.2.1 Servlet技术 131
7.2.2 JSP技术 138
7.2.3 MVC模式 141
7.3 Spring MVC介绍与实例 141
7.3.1 Spring MVC框架处理流程 142
7.3.2 Spring Web快速Demo实例 143
7.4 Spring MVC技术细节 146
7.4.1 DispatcherServlet—中央控制器 146
7.4.2 HandlerMapping—处理器映射器 148
7.4.3 HandlerAdapter—处理器适配器 150
7.4.4 视图与视图解析器 153
7.5 Spring MVC注解配置 155
7.5.1 组件与依赖注解 156
7.5.2 请求映射与参数注解 156
7.5.3 @ModelAttribute模型属性注解 160
7.6 基于代码配置的Spring MVC项目 162
7.6.1 Java代码进行Spring MVC的容器配置 162
7.6.2 Java代码替代web.xml文件的入口配置 163
7.7 MVC注解汇总 164
第8章 数据类型的转换、验证与异常处理 166
8.1 类型转换 166
8.1.1 属性编辑器:PropertyEditor 166
8.1.2 转换器服务:ConversionService 168
8.1.3 类型转换在容器中的使用 173
8.2 数据绑定 176
8.2.1 Bean封装器:BeanWrapper 176
8.2.2 数据绑定器:DataBinder与WebDataBinder 178
8.2.3 绑定器初始化注解:@InitBinder 180
8.2.4 HTTP消息转换器:HttpMessageConverter 181
8.3 数据验证 184
8.3.1 JavaBean标准校验 184
8.3.2 Spring核心容器的验证 186
8.3.3 Spring MVC容器的验证 188
8.3.4 验证器配置及增加自定义验证器 189
8.3.5 验证器使用层级及手动调用 191
8.4 Spring MVC异常处理 192
8.4.1 Controller类层级异常处理:@ExceptionHandler 192
8.4.2 全局的异常处理:@ControllerAdvice 193
8.4.3 XML配置异常处理 194
第9章 Spring MVC进阶 195
9.1 静态资源的放行 195
9.1.1 配置Servlet处理静态资源 196
9.1.2 配置放行动态资源 196
9.1.3 配置放行动态资源 197
9.2 父子容器 197
9.2.1 Spring的父子容器 197
9.2.2 Spring MVC的父子容器 200
9.2.3 Spring MVC父子容器的配置 202
9.3 Spring MVC与JSON 204
9.3.1 JSON介绍 204
9.3.2 Java对JSON的支持 206
9.3.3 Spring MVC使用JSON 210
9.4 Spring MVC与REST 214
9.4.1 REST的概念与应用 214
9.4.2 Spring MVC REST服务端:@RestController 218
9.4.3 Spring MVC REST客户端:RestTemplate 219
9.5 文件上传 223
9.5.1 多部分表单数据类型:multipart/form-data 223
9.5.2 Java文件上传功能实现方式 225
9.5.3 Spring MVC 文件上传功能的实现方式 228
9.5.4 Spring MVC文件上传最佳实践 231
9.6 国际化 233
9.6.1 Java国际化 233
9.6.2 Spring国际化 236
9.6.3 Spring MVC国际化 237
9.6.4 语言环境解析器:LocaleResolver 239
9.6.5 Spring MVC语言环境的动态修改 244
9.6.6 Spring MVC国际化的使用 245
第10章 Spring MVC测试框架 247
10.1 Spring MVC测试概述 247
10.1.1 Spring MVC的测试方式 247
10.1.2 Spring Web测试实例与测试的整体框架 248
10.2 模拟应用服务(MockMvc)及其构建器 251
10.2.1 独立测试MockMvc构建器:StandaloneMockMvcBuilder 251
10.2.2 集成测试MockMvc构建器:DefaultMockMvcBuilder 252
10.3 模拟请求构造器 254
10.3.1 模拟请求参数传递 255
10.3.2 模拟请求构造器的请求相关设置 257
10.4 结果操作 258
10.4.1 结果操作接口:ResultActions 259
10.4.2 结果匹配器接口:ResultMatcher 260
10.4.3 结果处理器:MockMvcResultHandlers 265
10.4.4 获取MvcResult后自定义验证 266
10.5 Spring MVC测试框架之其他 266
10.5.1 测试代码简写 267
10.5.2 独立测试的依赖处理 268
10.5.3 文件上传测试 268
第3篇 数据技术
第11章 数据库与Java数据访问技术 272
11.1 关系型数据库介绍 272
11.1.1 关系型数据库产品 272
11.1.2 关系型数据库及其对象 273
11.1.3 关系型数据库事务 274
11.1.4 SQL语言 276
11.2 MySQL数据库 276
11.2.1 MySQL数据类型 277
11.2.2 基于MySQL的基本SQL语句 279
11.2.3 MySQL高级对象与功能 281
11.3 Java数据访问基本技术 284
11.3.1 JDBC数据访问 284
11.3.2 Java数据库连接池 288
11.3.3 线程安全的数据库连接 293
11.4 ORM框架介绍 294
11.4.1 Java常见的ORM框架 294
11.4.2 Hibernate开发步骤与实例 295
11.5 JPA—Java持久层应用接口 298
11.5.1 JPA的主要内容 299
11.5.2 JPA的主要概念和类 301
11.5.3 JPA开发规范与步骤 303
11.5.4 JPA之Hibernate实现实例 303
11.5.5 JPA之Eclipse Link实现实例 305
第12章 MyBatis入门 310
12.1 MyBatis介绍与快速入门实例 310
12.1.1 MyBatis介绍 310
12.1.2 MyBatis快速入门实例 311
12.2 MyBatis核心接口和类 314
12.2.1 SqlSession(SQL会话接口) 315
12.2.2 SqlSessionFactory(SQL会话工厂接口) 316
12.2.3 SqlSessionFactoryBuilder(SQL会话工厂构建类) 316
12.2.4 Configuration(配置类) 317
12.3 MyBatis XML全局配置文件 318
12.3.1 配置文件的结构 318
12.3.2 环境配置 319
12.3.3 属性与属性文件配置 321
12.3.4 映射引用配置 322
12.3.5 MyBatis特性设置 323
12.4 XML映射文件配置 325
12.4.1 嵌套映射 330
12.4.3 语句配置 336
12.4.4 可重用SQL代码段() 338
第13章 MyBatis进阶 339
13.1 MyBatis内部运作解密 339
13.1.1 SqlSessionFactory的构建和类型 340
13.1.2 会话工厂创建会话的流程 340
13.1.3 Mapper映射器接口的运作方式 341
13.1.4 SqlSession和Executor如何执行SQL语句 342
13.2 MyBatis全局配置进阶 343
13.2.1 类型处理器 343
13.2.2 类型别名 345
13.2.3 对象工厂 346
13.2.4 插件 346
13.2.5 数据库提供商配置 347
13.3 动态SQL 348
13.3.1 条件判断 和条件语句 348
13.3.2 多分支选择标签 349
13.3.3 循环标签 349
13.4 MyBatis日志 350
13.4.1 Commons Logging +Log4j2搭建MyBatis日志方案实例 351
13.4.2 日志开启层级 352
13.5 MyBatis缓存 353
13.5.1 一级缓存 354
13.5.2 二级缓存 356
13.5.3 缓存补充介绍 359
13.6 MyBatis其他 360
13.6.1 基于注解映射及SQL语句构造器 360
13.6.2 Oracle自增长主键解决:selectKey 361
13.6.3 使用C3P0连接池 363
第14章 Spring数据访问与事务管理 364
14.1 Spring JDBC模板类 364
14.1.1 JdbcTemplate的使用 364
14.1.2 JdbcTemplate使用连接池数据源 366
14.2 Spring DAO支持 368
14.2.1 DAO的概念 368
14.2.2 基于JdbcTemplate的DAO层实例 369
14.2.3 Spring DAO支持类:DaoSupport 371
14.3 Spring整合ORM框架及JPA 372
14.3.1 Spring与Hibernate的整合概览 373
14.3.2 Spring与JPA的整合概览 374
14.4 Spring事务处理 375
14.4.1 Java事务处理 375
14.4.2 Spring事务管理 377
14.4.3 基于数据源事务管理器的编程式事务 380
14.4.4 基于数据源事务管理器的声明式事务 385
14.4.5 Spring MVC事务处理其他 390
第4篇 SSM整合开发
第15章 SSM整合概述 396
15.1 SSM整合综述 396
15.1.1 开发架构选择 396
15.1.2 SSM整合技术选型与导入 398
15.1.3 集成开发平台与开发工具 403
15.1.4 配置开发与注解开发 409
15.2 Spring与Spring MVC整合 410
15.2.1 配置Spring MVC父子容器 410
15.2.2 核心容器配置application.xml 411
15.2.3 Spring MVC容器配置spring-mvc.xml 412
15.3 Spring与MyBatis整合 414
15.3.1 整合的主要组件类 414
15.3.2 SSM整合方式 415
15.3.3 映射器配置 417
15.3.4 Spring与MyBatis整合事务管理 418
15.4 SSM异常整合与处理 421
15.4.1 Spring MVC异常处理的接口和类 422
15.4.2 Spring MVC异常处理器配置 425
15.4.3 JSON类型返回的异常处理器 428
15.5 Java日志与SSM日志整合 430
15.5.1 Log4j和Log4j2 430
15.5.2 Log4j2使用介绍 433
15.5.3 Log4j与JCL整合 436
15.5.4 SSM日志整合 438
第16章 SSM整合实例 442
16.1 项目需求、系统架构与系统设计 442
16.1.1 项目需求 442
16.1.2 系统架构 443
16.1.3 系统设计 446
16.2 项目框架搭建(SSM+Ext JS) 447
16.2.1 Eclipse+Maven创建多模块项目 447
16.2.2 后端项目(daport-backend)依赖和配置 455
16.2.3 前端项目(daport-front)搭建 464
16.2.4 前后端整合思路及开发方式 468
16.3 daport-backend后端开发 471
16.3.1 使用ERMaster设计表并产生SQL 471
16.3.2 MyBatis Generator产生实体类、映射接口及映射配置文件 473
16.3.3 用户请求服务与开发 474
16.4 daport-frontend前端开发 478
16.4.1 前端项目目录 478
16.4.2 主页面开发 478
16.4.3 用户管理页面开发 482
16.5 前后端整合开发 486
16.5.1 系统登录 486
16.5.2 国际化 488
16.5.3 用户管理前后端的整合 490
16.5.4 文件上传 491
16.5.5 统一异常处理 493
16.6 测试、调试与部署 494
16.6.1 后端daport-backend代码测试 494
16.6.2 后端daport-backend调试 496
16.6.3 前端daport-frontend调试 498
第5篇 高级开发技术
第17章 Spring AOP与MVC拦截器 502
17.1 AOP介绍及Java代理 502
17.1.1 AOP的应用场景及基本概念 503
17.1.2 Java代理实现 504
17.1.3 CGLIB动态代理库 507
17.2 Java AOP框架—AspectJ 509
17.2.1 使用Eclipse AJDT开发AspectJ实例 509
17.2.2 AspectJ切点执行表达式 510
17.2.3 AspectJ注解开发 511
17.3 Spring AOP框架解密 512
17.3.1 Spring AOP框架及代理实现 512
17.3.2 代理工厂Bean:ProxyFactoryBean 515
17.3.3 增强器:Advisor 517
17.3.4 基于XML的AOP配置 520
17.3.5 基于注解的AOP配置 522
17.3.6 Spring AOP与AspectJ的关系 524
17.4 MVC拦截器与过滤器 524
17.4.1 Spring MVC拦截器 524
17.4.2 Servlet 过滤器与Spring实现的过滤器 526
17.4.3 过滤器与拦截器的关系 529
第18章 Spring Security框架与多线程 531
18.1 Spring Security概述与Web请求认证 531
18.1.1 Spring Security快速入门示例 531
18.1.2 Spring Security用户认证配置标签 534
18.1.3 Spring Security密码加密 537
18.2 Spring Security方法层级授权 538
18.2.1 单个Bean方法保护的配置 538
18.2.2 方法的安全注解 539
18.2.3 全局安全切点配置 541
18.3 Spring Security机制解密 541
18.3.1 Spring Security实现机制 541
18.3.2 AuthenticationManager(认证管理器)核心接口及运作原理 542
18.3.3 AccessDecisionManager(访问决策管理器) 544
18.3.4 SecurityMetadataSource(安全元数据源) 545
18.3.5 SecurityInterceptor(安全拦截器) 546
18.4 Spring Security代码配置与测试 548
18.4.1 Spring Security基于代码配置 549
18.4.2 Spring Security单元测试 551
18.5 Spring Security实战 554
18.5.1 自定义登录页面 554
18.5.2 常见错误及解决方法 555
18.6 多线程与线程安全 556
18.6.1 Java线程创建与执行 557
18.6.2 Java线程安全问题 558
18.6.3 共享变量的线程安全解决方式 559
18.6.4 ThreadLocal解决线程安全 561
18.6.5 Spring中ThreadLocal的使用 563

教学资源推荐
作者: (美)Y.Daniel Liang 著
作者: 汪同庆 关焕梅 汤洁
作者: 辛运帏 饶一梅
参考读物推荐
作者: [美]埃里克·珍兆科(Eric Jendrock) 里卡多·塞维拉-纳瓦罗(Ricardo Cervera-Navarro) 伊恩·埃文斯(Ian Evans) 金姆·哈泽(Kim Haase) 威廉·马基特(William Markito) 著
作者: [美]苏珊·E. 麦格雷戈(Susan E. McGregor) 著
作者: (美)Harvey M.Deitel 等
作者: 刘刚 舒戈 著