本书讲解了当前JAEE企业级开发热门的Spring Boot框架,并结合实际开发场景,介绍了如何使用Spring Boot整合第三方框架进行Web开发。全书共10章,其中,第1-2章介绍了Spring Boot相关原理、Spring Boot核心配置与注解;第3-9章介绍了Spring Boot开发Web应用的常见技术,包括数据访问、视图技术、常见Web功能、缓存管理、安全管理、消息服务管理、任务管理。第10章结合前面所学的知识,开发了一个综合项目——个人博客系统,希望读者可以通过项目实战,深刻体会Spring Boot框架开发Web应用的便捷。
本书既可作为高等院校本、专科计算机相关专业的教材,也可作为社会培训教材,是一本适合有一定SSM开发经验的读者学习和参考的读物。
1、详细介绍了Spring Boot 2.x与常用第三方框架的整合使用,让企业应用开发更加快速高效。
2、本书配有大量案例以及一个综合项目,案例步骤详细,配图合理,能够让读者身临其境感受企业应用开发。
3、本书附有配套视频、源代码、习题、教学PPT、教学设计等资源;另外,为了帮助初学者更好地学习本书讲解的内容,还提供了在线答疑服务,希望可以帮助更多的读者。
第1章 Spring Boot开发入门 1 1.1 Spring Boot概述 2 1.1.1 Spring Boot简介 2 1.1.2 Spring Boot的优点 3 1.2 Spring Boot入门程序 4 1.2.1 环境准备 4 1.2.2 使用Maven方式构建Spring Boot 项目 4 1.2.3 使用Spring Initializr方式构建 Spring Boot项目 9 1.3 单元测试与热部署 13 1.3.1 单元测试 13 1.3.2 热部署 14 1.4 Spring Boot原理分析 16 1.4.1 Spring Boot依赖管理 16 1.4.2 Spring Boot自动配置 19 1.4.3 Spring Boot执行流程 22 1.5 本章小结 26 1.6 习题 26 第2章 Spring Boot核心配置与 注解 28 2.1 全局配置文件 29 2.1.1 application.properties配置文件 29 2.1.2 application.yaml配置文件 32 2.2 配置文件属性值的注入 34 2.2.1 使用@ConfigurationProperties注入 属性 34 2.2.2 使用@Value注入属性 34 2.2.3 两种注解对比分析 36 2.3 Spring Boot自定义配置 38 2.3.1 使用@PropertySource加载配置 文件 38 2.3.2 使用@ImportResource加载XML 配置文件 39 2.3.3 使用@Configuration编写自定义 配置类 41 2.4 Profile多环境配置 42 2.4.1 使用Profile文件进行多环境 配置 42 2.4.2 使用@Profile注解进行多环境 配置 43 2.5 随机值设置以及参数间引用 46 2.6 本章小结 47 2.7 习题 47 第3章 Spring Boot数据访问 49 3.1 Spring Boot数据访问概述 50 3.2 Spring Boot整合MyBatis 50 3.2.1 基础环境搭建 50 3.2.2 使用注解的方式整合MyBatis 54 3.2.3 使用配置文件的方式整合 MyBatis 56 3.3 Spring Boot整合JPA 58 3.3.1 Spring Data JPA介绍 58 3.3.2 使用Spring Boot整合JPA 62 3.4 Spring Boot整合Redis 65 3.4.1 Redis介绍 65 3.4.2 使用Spring Boot整合Redis 67 3.5 本章小结 71 3.6 习题 71 第4章 Spring Boot视图技术 73 4.1 Spring Boot支持的视图 技术 74 4.2 Thymeleaf基本语法 75 4.2.1 常用标签 75 4.2.2 标准表达式 77 4.3 Thymeleaf基本使用 79 4.3.1 Thymeleaf模板基本配置 79 4.3.2 静态资源的访问 79 4.4 使用Thymeleaf完成数据的 页面展示 79 4.5 使用Thymeleaf配置国际化 页面 82 4.6 本章小结 87 4.7 习题 87 第5章 Spring Boot实现Web 的常用功能 89 5.1 Spring MVC的整合支持 90 5.1.1 Spring MVC自动配置介绍 90 5.1.2 Spring MVC功能扩展实现 90 5.2 Spring Boot整合Servlet 三大组件 94 5.2.1 组件注册整合Servlet三大组件 94 5.2.2 路径扫描整合Servlet三大组件 98 5.3 文件上传与下载 100 5.3.1 文件上传 100 5.3.2 文件下载 104 5.4 Spring Boot应用的打包和 部署 107 5.4.1 Jar包方式打包部署 107 5.4.2 War包方式打包部署 111 5.5 本章小结 113 5.6 习题 113 第6章 Spring Boot缓存 管理 115 6.1 Spring Boot默认缓存管理 116 6.1.1 基础环境搭建 116 6.1.2 Spring Boot默认缓存体验 119 6.2 Spring Boot缓存注解 介绍 120 6.3 Spring Boot整合Redis缓存 实现 123 6.3.1 Spring Boot支持的缓存组件 123 6.3.2 基于注解的Redis缓存实现 124 6.3.3 基于API的Redis缓存实现 128 6.4 自定义Redis缓存序列化 机制 131 6.4.1 自定义RedisTemplate 131 6.4.2 自定义RedisCacheManager 135 6.5 本章小结 137 6.6 习题 137 第7章 Spring Boot安全管理 139 7.1 Spring Security介绍 140 7.2 Spring Security快速入门 140 7.2.1 基础环境搭建 140 7.2.2 开启安全管理效果测试 142 7.3 MVC Security安全配置 介绍 144 7.4 自定义用户认证 145 7.4.1 内存身份认证 145 7.4.2 JDBC身份认证 147 7.4.3 UserDetailsService身份认证 150 7.5 自定义用户授权管理 153 7.5.1 自定义用户访问控制 153 7.5.2 自定义用户登录 156 7.5.3 自定义用户退出 159 7.5.4 登录用户信息获取 161 7.5.5 记住我功能 163 7.5.6 CSRF防护功能 168 7.6 Security管理前端页面 173 7.7 本章小结 175 7.8 习题 175 第8章 Spring Boot消息 服务 177 8.1 消息服务概述 178 8.1.1 为什么要使用消息服务 178 8.1.2 常用消息中间件介绍 180 8.2 RabbitMQ消息中间件 181 8.2.1 RabbitMQ简介 181 8.2.2 RabbitMQ工作模式介绍 181 8.3 RabbitMQ安装以及整合环境 搭建 183 8.3.1 安装RabbitMQ 183 8.3.2 Spring Boot整合RabbitMQ环境 搭建 184 8.4 Spring Boot与RabbitMQ整合 实现 185 8.4.1 Publish/Subscribe(发布订阅 模式) 185 8.4.2 Routing(路由模式) 193 8.4.3 Topics(通配符模式) 195 8.5 本章小结 197 8.6 习题 197 第9章 Spring Boot任务管理 199 9.1 异步任务 200 9.1.1 无返回值异步任务调用 200 9.1.2 有返回值异步任务调用 202 9.2 定时任务 203 9.2.1 定时任务介绍 204 9.2.2 定时任务实现 206 9.3 邮件任务 208 9.3.1 发送纯文本邮件 208 9.3.2 发送带附件和图片的邮件 210 9.3.3 发送模板邮件 213 9.4 本章小结 215 9.5 习题 215 第10章 Spring Boot综合项目 实战——个人博客 系统 217 10.1 系统概述 218 10.1.1 系统功能介绍 218 10.1.2 项目效果预览 218 10.2 项目设计 220 10.2.1 系统开发及运行环境 220 10.2.2 文件组织结构 220 10.2.3 数据库设计 222 10.3 系统环境搭建 223 10.3.1 准备数据库资源 223 10.3.2 准备项目环境 224 10.4 前台管理模块 229 10.4.1 文章分页展示 229 10.4.2 文章详情查看 238 10.4.3 文章评论管理 244 10.5 后台管理模块 249 10.5.1 数据展示 249 10.5.2 文章发布 252 10.5.3 文章修改 256 10.5.4 文章删除 258 10.6 用户登录控制 261 10.7 定时邮件发送 267 10.8 本章小结 270