第1章 Spring Boot入门 1
1.1 Spring简介 2
1.1.1 Spring概述 2
1.1.2 Spring的生态圈 3
1.1.3 Spring 5的变化 4
1.1.4 Spring的配置简化 4
1.2 Spring Boot简介 4
1.2.1 Spring Boot概述 4
1.2.2 Spring Boot解决的问题 5
1.2.3 Spring Boot的主要特性 5
1.2.4 Spring Boot 2.0的重要改变 5
1.3 “开箱即用”的依赖模块 5
1.3.1 日志依赖模块spring-boot-starter-logging 6
1.3.2 Web开发依赖模块spring-boot-starter-web 7
1.4 开发第一个Spring Boot应用 8
1.4.1 下载和安装Maven 8
1.4.2 Eclipse集成Maven 9
1.4.3 示例:第一个Spring Boot应用 10
1.5 本章小结 18
第2章 Spring Boot核心 19
2.1 Spring Boot的启动类与核心注解@SpringBootApplication 20
2.2 Spring Boot基本配置介绍 21
2.2.1 关闭某个自动配置 21
2.2.2 定制启动banner 22
2.2.3 应用的全局配置文件 23
2.2.4 Spring Boot的依赖模块 24
2.3 Spring Boot自动配置原理 25
2.3.1 源码分析 25
2.3.2 spnng.factones分析 27
2.3.3 Spring Boot Web开发的自动配置 29
2.4 本章小结 30
第3章 SpringBoot的Web开发 31
3.1 Spring Boot的Web开发支持 32
3.2 Thymeleaf模板引擎 32
3.2.1 Thymeleaf概述 33
3.2.2 Thymeleaf基础语法 33
3.3 Spring和Thymeleaf的整合 36
3.4 Spring Boot的Thymeleaf支持 37
3.5 Spring Boot的Web开发实例 38
示例:第一个Spring Boot的Web应用 38
示例:Thymeleaf常用功能 45
3.6 Spring Boot对JSP的支持 52
示例:Spring Boot添加JSP支持 53
3.7 Spring Boot处理JSON数据 57
示例:Spring Boot处理JSON 57
3.8 Spring Boot文件上传下载 63
示例:Spring Boot文件上传 63
示例:使用对象方式接收上传文件 66
示例:文件下载 69
3.9 Spring Boot的异常处理 71
示例:ExceptionHandler处理异常 71
示例:父类Controller处理异常 73
示例:Advice处理异常返回JSON 76
3.10 本章小结 78
第4章 SpringBoot的数据访问 79
4.1 Hibernate/JPA/Spring Data JPA的概念 80
4.1.1 对象/关系数据库映射(ORM) 80
4.1.2 基本映射方式 81
4.1.3 流行的ORM框架简介 82
4.2 Spring Data JPA 83
4.2.1 Spring Data核心数据访问接口 83
示例:CrudRepository接口访问数据 84
示例:PagingAndSortingRepository接口访问数据 91
4.2.2 Spring Data JPA开发 99
示例:简单条件查询 100
示例:关联查询和@Query查询 105
示例:@NamedQuery查询 114
示例:Specification查询 118
4.3 Spring Boot使用JdbcTemplate 128
示例:JdbcTemplate访问数据 128
4.4 Spring Boot整合MyBatis 135
示例:Spring Boot整合MyBatis开发 135
4.5 本章小结 141
第5章 Spring Boot的热部署与单元测试 142
5.1 使用spring-boot-devtools进行热部署 143
示例:使用spring-boot-devtools实现热部署 143
5.2 Spring Boot的单元测试 147
示例:使用Spring Boot的单元测试 147
5.3 本章小结 155
第6章 Spring Boot的Security安全控制 156
6.1 Spring Security是什么 157
6.2 Spring Security入门 157
6.2.1 Security适配器 157
6.2.2 用户认证 158
6.2.3 用户授权 158
6.2.4 Spring Security核心类 160
6.2.5 Spring Security的验证机制 161
6.2.6 Spring Boot的支持 161
示例:简单Spring Boot Security应用 162
6.3 企业项目中的Spring Security操作 173
示例:基于JPA的Spring Boot Securi操作 173
示例:基于MyBatis的Spring Boot Security操作 180
示例:基于JDBC的Spring Boot Security操作 183
6.4 本章小结 185
第7章 实战项目:信息管理系统 186
7.1 项目简介及系统架构 187
7.1.1 系统功能介绍 187
7.1.2 相关技术介绍 187
7.1.3 系统结构 188
7.1.4 系统的功能模块 188
7.2 配置文件 189
7.3 持久化类 191
7.3.1 设计持久化实体 191
7.3.2 创建持久化实体类 192
7.3.3 导入初始数据 197
7.4 定义Repository接口实现Repository持久层 198
7.5 实现Service持久层 200
7.5.1 业务逻辑组件的设计 201
7.5.2 实现业务逻辑组件 201
7.5.3 事务管理 224
7.6 实现Web层 224
7.6.1 控制器 224
7.6.2 系统登录 225
7.6.3 菜单管理 233
7.6.4 角色管理 235
7.6.5 用户管理 240
7.6.6 功能扩展 245
7.7 本章小结 249