Spring MVC + MyBatis快速开发与项目实战
出版时间:2019
内容简介
本书从开发实战出发,以新版Spring、Spring MVC和MyBatis为基础,结合开发工具Intellij IDEA,通过完整的项目实例让读者快速掌握SSM的开发技能。全书共分12章,第1章和第2章,由零开始,引导读者快速搭建SSM框架。第3章主要介绍Spring框架的IOC和AOP。第4章主要介绍Mybatis的映射器、动态SQL、注解配置和关联映射。第5章主要介绍MyBatis的分页和分页插件PageHelper。第6章主要介绍Spring MVC请求映射、参数绑定注解和信息转换详解。第7章主要介绍Spring MVC数据校验。第8章主要介绍Spring和Mybatis事务管理。第9章主要介绍Mybatis的一级缓存和二级缓存机制。第10章主要介绍Spring MVC执行流程、处理映射器和适配器以及视图解析器。第11章主要介绍Mybatis的整体框架、初始化流程和执行流程。最后一章介绍如何开发一个完整的高并发点赞项目。 本书编者还精心录制了SSM框架学习的视频教程,以帮助读者快速掌握本书内容。 本书来自于一线开发人员的编程实践,突出技术的先进性和实用性,适用于所有Java编程语言开发人员、SSM框架开发人员以及广大计算机专业的师生使用。
目 录
第1章 开发环境准备 1
1.1 JDK安装 1
1.2 Intellij IDEA安装 3
1.3 Tomcat的安装与配置 4
1.3.1 Tomcat的下载 4
1.3.2 Intellij IDEA配置Tomcat 4
1.4 Maven的安装和配置 6
1.5 MySQL数据库的安装 8
1.5.1 MySQL的安装 8
1.5.2 Navicat for MySQL客户端安装与使用 9
第2章 快速搭建第一个SSM项目 10
2.1 SSM简述 10
2.1.1 Spring简述 10
2.1.2 Spring MVC简述 12
2.1.3 MyBatis简述 12
2.2 快速搭建SSM项目 13
2.2.1 快速搭建Web项目 13
2.2.2 集成Spring 16
2.2.3 集成Spring MVC框架 21
2.2.4 集成MyBatis框架 27
2.2.5 集成Log4j日志框架 34
2.2.6 集成JUnit测试框架 38
第3章 Spring快速上手 40
3.1 Spring IOC和DI 40
3.1.1 Spring IOC和DI概述 40
3.1.2 单例模式 42
3.1.3 Spring单例模式源码解析 48
3.1.4 简单工厂模式详解 51
3.1.5 工厂方法模式详解 55
3.1.6 Spring Bean工厂类详解 59
3.2 Spring AOP 61
3.2.1 Spring AOP概述 61
3.2.2 Spring AOP核心概念 61
3.2.3 JDK动态代理实现日志框架 63
3.2.4 Spring AOP实现日志框架 68
3.2.5 静态代理与动态代理模式 70
第4章 MyBatis映射器与动态SQL 74
4.1 MyBatis映射器 74
4.1.1 映射器的主要元素 74
4.1.2 select元素 75
4.1.3 insert元素 77
4.1.4 selectKey元素 77
4.1.5 update元素 78
4.1.6 delete元素 79
4.1.7 sql元素 80
4.1.8 #与$区别 81
4.1.9 resultMap结果映射集 81
4.2 动态SQL 83
4.2.1 动态SQL概述 83
4.2.2 if元素 83
4.2.3 choose、when、otherwise元素 84
4.2.4 trim、where、set元素 86
4.2.5 foreach元素 88
4.2.6 bind元素 89
4.3 MyBatis注解配置 90
4.3.1 MyBatis常用注解 90
4.3.2 @Select注解 91
4.3.3 @Insert、@Update、@Delete注解 91
4.3.4 @Param注解 92
4.4 MyBatis关联映射 94
4.4.1 关联映射概述 94
4.4.2 一对一 94
4.4.3 一对多 97
4.4.4 多对多 101
第5章 MyBatis分页开发 106
5.1 RowBounds分页 106
5.1.1 分页概述 106
5.1.2 RowBounds分页 107
5.1.3 RowBounds分页使用 108
5.1.4 RowBounds分页原理 109
5.2 分页插件PageHelper 111
5.2.1 PageHelper概述 111
5.2.2 PageHelper使用 111
第6章 Spring MVC常用注解 114
6.1 请求映射注解 114
6.1.1 @Controller注解 114
6.1.2 @RequestMapping注解 116
6.1.3 @GetMapping和@PostMapping注解 120
6.1.4 Model和ModelMap 121
6.1.5 ModelAndView 122
6.1.6 请求方法可出现参数和可返回类型 123
6.2 参数绑定注解 125
6.2.1 @RequstParam注解 125
6.2.2 @PathVariable注解 126
6.2.3 @RequestHeader注解 127
6.2.4 @CookieValue注解 128
6.2.5 @ModelAttribute注解 129
6.2.6 @SessionAttribute和@SessionAttributes注解 134
6.2.7 @ResponseBody和@RequestBody注解 136
6.3 信息转换详解 138
6.3.1 HttpMessageConverter 138
6.3.2 RequestMappingHandlerAdapter 140
6.3.3 自定义HttpMessageConverter 141
第7章 Spring数据校验 142
7.1 数据校验概述 142
7.2 Spring的Validation校验框架 143
7.3 JSR 303校验 147
第8章 Spring和MyBatis事务管理 152
8.1 Spring事务管理 152
8.1.1 Spring事务回顾 152
8.1.2 Spring声明式事务 153
8.1.3 Spring注解事务行为 153
8.2 MyBatis事务管理 155
第9章 MyBatis缓存机制 160
9.1 MyBatis的缓存模式 160
9.2 一级查询缓存 161
9.2.1 一级缓存概述 161
9.2.2 一级缓存示例 161
9.2.3 一级缓存生命周期 164
9.3 二级查询缓存 165
9.3.1 二级缓存概述 165
9.3.2 二级缓存示例 166
9.3.3 cache-ref共享缓存 168
9.4 MyBatis缓存原理 170
9.4.1 MyBatis缓存的工作原理 170
9.4.2 装饰器模式 171
9.4.3 Cache接口及其实现 173
第10章 Spring MVC原理剖析 176
10.1 Spring MVC执行流程 176
10.1.1 Spring MVC执行流程 176
10.1.2 前端控制器DispatcherServlet 178
10.2 处理映射器和适配器 182
10.2.1 处理映射器 182
10.2.2 处理适配器 183
10.3 视图解析器 195
10.3.1 概述 195
10.3.2 视图解析流程 195
10.3.3 常用视图解析器 195
10.3.4 ViewResolver链 201
第11章 MyBatis原理剖析 203
11.1 MyBatis整体框架 203
11.1.1 概述 203
11.1.2 接口层 203
11.1.3 核心处理层 206
11.1.4 基础支撑层 207
11.2 MyBatis初始化流程 208
11.3 MyBatis执行流程 211
第12章 高并发点赞项目实践 215
12.1 高并发点赞项目 215
12.1.1 项目概述 215
12.1.2 数据库表和持久化类 216
12.1.3 DAO层和Mapper映射文件 220
12.1.4 Service层和DTO类 223
12.1.5 Controller层和前端页面 227
12.1.6 测试 229
12.2 传统点赞功能实现 229
12.2.1 概述 229
12.2.2 代码实现 231
12.2.3 测试 235
12.3 集成Redis缓存 235
12.3.1 概述 235
12.3.2 Redis安装和使用 236
12.3.3 集成Redis缓存 243
12.3.4 设计Redis数据结构 246
12.3.5 代码实现 247
12.3.6 集成Quartz定时器 251
12.3.7 测试 255
12.4 集成ActiveMQ 255
12.4.1 概述 255
12.4.2 ActiveMQ的安装 256
12.4.3 集成ActiveMQ 258
12.4.4 ActiveMQ异步消费 261
12.4.5 测试 264
参考文献 265