书籍详情
Spring Boot从零开始学(视频教学版)
作者:郭浩然 著
出版社:清华大学出版社
出版时间:2022-01-01
ISBN:9787302597223
定价:¥75.00
购买这本书可以去
内容简介
Spring是Java开发必不可少的框架,是一个庞大的生态系统,Spring Boot正是在Spring这一片肥沃的土壤中生长出来的快速应用开发框架。本书从Spring Boot的工程化组件入手,采用一步一示例的方式引导读者入门,并通过两个完整案例帮助读者学会开发Spring Boot项目。本书配套源码、PPT课件、教学视频、思维导图、开发环境与答疑服务。 本书共分12章。第1~3章介绍构建Spring Boot项目的步骤和Spring Boot Web开发的基础;第4~9章介绍Spring Boot的多种框架或技术,比如JPA、MyBatis、Redis、Elasticsearch、日志和安全监控等;第10~11章分别通过客户管理系统和微博系统两个简单的项目,以巩固读者对Spring Boot基础知识的学习;第12章介绍Spring Boot的测试、打包和项目部署功能。 本书从实用的角度出发,结合项目示例,在充分实践的前提下尽量拓展知识广度、减少知识盲点,非常适合时间紧张却需要快速上手Spring Boot的初学者,也可作为高等院校、中职学校和培训机构计算机软件开发专业的教材。
作者简介
郭浩然,长期从事Web开发,项目经验丰富,擅长Java服务器开发,精通Spring系列和持久层的多种框架,熟悉SQL和NoSQL多种数据库。对技术保有一颗好奇心,喜欢研究新兴技术,致力于做一名随时代不断进步技术大牛。
目录
第1章 从零起步搭建Spring Boot开发环境 1
1.1 Spring Boot为什么流行起来 1
1.1.1 Spring Boot的优点 1
1.1.2 Spring Boot的时代背景 2
1.2 搭建开发环境 2
1.2.1 使用Spring官方提供的初始化工具 2
1.2.2 搭建Eclipse开发环境 5
1.2.3 搭建IntelliJ IDEA开发环境 9
1.3 Spring Boot的依赖管理和自动配置 11
1.3.1 依赖管理 12
1.3.2 自动配置 13
1.4 实战——Spring Boot版本的Hello World 15
第2章 工程项目使用Spring Boot的步骤 18
2.1 构建项目 18
2.1.1 构建工具 18
2.1.2 Starter、JAR与依赖 19
2.1.3 再说依赖管理 22
2.2 组织代码 23
2.2.1 不建议使用default package 23
2.2.2 放置应用的main类 24
2.3 配置类 24
2.3.1 导入其他配置类 24
2.3.2 导入XML配置 25
2.4 再说自动配置 25
2.4.1 用户配置替换自动配置 25
2.4.2 指定禁用生效的自动配置类 26
2.5 Spring Bean与依赖注入 26
2.6 使用@SpringBootApplication注解 28
2.7 运行程序 28
2.7.1 在IDE中运行 29
2.7.2 打成JAR包运行 29
2.7.3 使用Maven插件运行 30
2.7.4 使用Gradle插件运行 30
2.7.5 热部署 30
2.8 开发者工具 30
2.8.1 默认配置 31
2.8.2 自动重启 31
2.8.3 使用LiveReload自动刷新 34
2.8.4 全局设置 34
2.9 打包应用到生产环境 34
2.10 实战——使用Maven创建完整的工程项目 34
第3章 使用Spring Boot进行Web开发 39
3.1 模板引擎 39
3.2 使用Thymeleaf开发示例 40
3.3 上传文件 43
3.3.1 POM文件配置 43
3.3.2 参数设置 43
3.3.3 编写前端页面 44
3.3.4 编写处理上传请求的Controller类 44
3.3.5 从浏览器上传文件 45
3.4 使用定时任务 46
3.4.1 POM包配置 46
3.4.2 对自动配置参数的说明 46
3.4.3 编写定时任务代码 47
3.4.4 测试定时任务执行 48
3.5 发送邮件 49
3.5.1 POM包配置 49
3.5.2 在application.properties中添加邮箱配置 49
3.5.3 编写邮件Service类对框架再封装 50
3.5.4 编写测试类进行测试 51
3.6 使用Shiro 52
3.6.1 基本配置 52
3.6.2 编写业务逻辑代码和页面 53
3.6.3 在代码中引入Shiro 55
3.6.4 测试用户认证和权限管理的效果 58
3.7 实战——开发一个简单的Restful API网关 59
第4章 使用Spring Boot进行数据库开发 64
4.1 配置数据源 64
4.1.1 启动默认数据源 64
4.1.2 配置自定义数据源 65
4.2 使用JdbcTemplate操作数据库 66
4.3 使用Spring Data JPA(Hibernate)操作数据 67
4.3.1 基础知识 67
4.3.2 依赖管理和配置信息 68
4.3.3 使用Spring Data JPA进行开发 69
4.4 整合MyBatis框架 85
4.4.1 MyBatis简介 85
4.4.2 MyBatis的配置 85
4.4.3 Spring Boot整合MyBatis 88
4.4.4 MyBatis的其他配置 89
4.5 实战——商品信息管理小系统 90
第5章 Spring Boot与Redis 103
5.1 使用spring-data-redis操作Redis 103
5.1.1 Spring Data Redis项目的设计 103
5.1.2 RedisTemplate与数据操作类的使用 106
5.1.3 RedisCallback、SessionCallback接口和Redis事务的使用 108
5.2 在Spring Boot中配置和使用Redis 109
5.2.1 通过Starter引入Redis相关依赖并配置Redis 110
5.2.2 Redis数据类型及操作API 112
5.3 Redis的一些特殊用法 125
5.3.1 Redis事务 125
5.3.2 Redis Pipelined和Lua脚本 126
5.3.3 Redis发布订阅 126
5.4 使用Spring缓存注解操作Redis 127
5.4.1 启用缓存和配置缓存管理器 127
5.4.2 使用缓存注解开发 128
5.4.3 类实例方法类内部调用时的失效问题 129
5.4.4 缓存脏数据说明 130
5.5 实战——用Redis改版商品信息管理系统V2.0 130
5.5.1 引入Redis的依赖并配置Redis服务地址和启用缓存 131
5.5.2 添加@Cacheable和@CacheEvict注解 131
5.5.3 运行程序测试缓存效果 133
第6章 Spring Boot整合Elasticsearch 135
6.1 Elasticsearch的使用场景和相关技术 135
6.2 spring-data-elasticsearch支持的Elasticsearch Client 136
6.2.1 Elasticsearch的Client 136
6.2.2 创建RestHighLevelClient 136
6.3 使用operations相关API操作Elasticsearch 137
6.3.1 4个Operations接口 137
6.3.2 搜索结果类型 142
6.3.3 查询条件的封装 143
6.4 Repository的使用 145
6.4.1 使用注解管理索引实体类 145
6.4.2 查询方法的定义 147
6.4.3 使用@Query注解定义查询 148
6.5 在Spring Boot中配置
spring-data-elasticsearch 149
第7章 Spring Boot的日志管理 150
7.1 常用的日志框架 150
7.1.1 日志实现 150
7.1.2 日志门面 151
7.2 Spring Boot支持的日志配置 152
7.2.1 Spring Boot默认支持的日志框架 152
7.2.2 自定义日志配置 153
7.2.3 日志框架的配置文件 157
7.2.4 配置项汇总 157
7.2.5 日志级别 159
7.2.6 日志格式和内容 160
7.2.7 输出到控制台 162
7.2.8 日志组 163
7.3 输出到日志文件的配置 164
7.3.1 配置输出到日志文件 164
7.3.2 日志滚动配置 165
7.4 配置文件扩展 166
7.4.1 定义Profile的个性配置 166
7.4.2 引入Spring Environment Property 167
第8章 Spring Boot的安全与监控 168
8.1 安全控制(使用Spring Security) 168
8.1.1 Spring Security的开启和配置 168
8.1.2 使用Spring Security 171
8.2 使用Actuator监控应用 178
8.2.1 开启Actuator 178
8.2.2 默认配置 179
8.2.3 Actuator的安全控制 182
8.2.4 Health Endpoint的使用 186
8.2.5 Metrics Endpoint 190
8.2.6 自定义Endpoint 195
第9章 Spring Boot数据访问 199
9.1 自动配置默认数据源 199
9.2 自定义一个或多个数据源 204
9.2.1 在使用默认数据源实例的基础上自定义配置 204
9.2.2 配置多个数据源 205
9.3 Spring Data JPA与数据源绑定 207
9.4 数据库的初始化 211
9.4.1 基于SQL脚本初始化数据库 212
9.4.2 使用JPA和Hibernate时初始化数据库 213
第10章 项目实战1——客户管理Web系统 214
10.1 梳理业务需求 214
10.2 技术实现设计 215
10.3 构建项目 216
10.3.1 使用Spring Initializr构建项目 216
10.3.2 配置数据库 220
10.4 创建数据库表 221
10.5 开发客户信息模块 222
10.5.1 开发系统首页 222
10.5.2 开发添加客户页面和接口 223
10.5.3 开发客户列表页面和接口 228
10.5.4 开发编辑客户信息页面和接口 232
10.6 开发交易信息模块 236
10.6.1 在系统首页增加交易信息导航 236
10.6.2 开发“创建交易”页面和接口 236
10.6.3 开发“交易列表”页面 242
10.6.4 开发“编辑交易”页面 243
10.6.5 开发标注发货状态功能 245
第11章 项目实战2——个人博客 249
11.1 梳理业务需求 249
11.2 技术实现设计 250
11.2.1 博客模块 250
11.2.2 用户模块 251
11.2.3 喜欢、取消喜欢博客功能 252
11.3 构建项目 253
11.4 创建数据实体类 255
11.5 开发博客模块 258
11.5.1 开发发布博客接口和页面 259
11.5.2 开发博客列表接口和页面 262
11.5.3 开发博客详情接口和页面 264
11.5.4 实现浏览次数计数功能 266
11.6 开发用户模块 267
11.6.1 开发登录相关接口 267
11.6.2 完成登录页面 273
11.6.3 测试用户登录功能 276
11.6.4 在博客列表页面增加当前用户的显示 277
11.6.5 个人主页页面 280
11.7 实现喜欢/取消喜欢博客功能 283
11.7.1 开发“喜欢博客”接口 283
11.7.2 开发“取消喜欢博客”接口 284
11.7.3 修改博客详情页面接口,返回当前用户是否已喜欢 285
11.7.4 修改博客详情页面,增加喜欢/取消喜欢按钮 286
11.7.5 页面测试 287
11.8 配置Spring Security访问规则 289
11.8.1 创建管理员用户 289
11.8.2 配置接口的访问权限 290
11.8.3 配置仅管理员用户可以发布博客 291
11.8.4 测试发布博客权限管理 293
第12章 Spring Boot项目的测试和部署 295
12.1 配置的切换 295
12.1.1 在项目启动时指定外部配置文件 295
12.1.2 Spring Profile的使用 299
12.2 Spring Boot的测试功能 301
12.2.1 构建测试类 301
12.2.2 测试的自动配置 305
12.3 打包和部署 308
12.3.1 打包(JAR和WAR) 308
12.3.2 运行项目 310
1.1 Spring Boot为什么流行起来 1
1.1.1 Spring Boot的优点 1
1.1.2 Spring Boot的时代背景 2
1.2 搭建开发环境 2
1.2.1 使用Spring官方提供的初始化工具 2
1.2.2 搭建Eclipse开发环境 5
1.2.3 搭建IntelliJ IDEA开发环境 9
1.3 Spring Boot的依赖管理和自动配置 11
1.3.1 依赖管理 12
1.3.2 自动配置 13
1.4 实战——Spring Boot版本的Hello World 15
第2章 工程项目使用Spring Boot的步骤 18
2.1 构建项目 18
2.1.1 构建工具 18
2.1.2 Starter、JAR与依赖 19
2.1.3 再说依赖管理 22
2.2 组织代码 23
2.2.1 不建议使用default package 23
2.2.2 放置应用的main类 24
2.3 配置类 24
2.3.1 导入其他配置类 24
2.3.2 导入XML配置 25
2.4 再说自动配置 25
2.4.1 用户配置替换自动配置 25
2.4.2 指定禁用生效的自动配置类 26
2.5 Spring Bean与依赖注入 26
2.6 使用@SpringBootApplication注解 28
2.7 运行程序 28
2.7.1 在IDE中运行 29
2.7.2 打成JAR包运行 29
2.7.3 使用Maven插件运行 30
2.7.4 使用Gradle插件运行 30
2.7.5 热部署 30
2.8 开发者工具 30
2.8.1 默认配置 31
2.8.2 自动重启 31
2.8.3 使用LiveReload自动刷新 34
2.8.4 全局设置 34
2.9 打包应用到生产环境 34
2.10 实战——使用Maven创建完整的工程项目 34
第3章 使用Spring Boot进行Web开发 39
3.1 模板引擎 39
3.2 使用Thymeleaf开发示例 40
3.3 上传文件 43
3.3.1 POM文件配置 43
3.3.2 参数设置 43
3.3.3 编写前端页面 44
3.3.4 编写处理上传请求的Controller类 44
3.3.5 从浏览器上传文件 45
3.4 使用定时任务 46
3.4.1 POM包配置 46
3.4.2 对自动配置参数的说明 46
3.4.3 编写定时任务代码 47
3.4.4 测试定时任务执行 48
3.5 发送邮件 49
3.5.1 POM包配置 49
3.5.2 在application.properties中添加邮箱配置 49
3.5.3 编写邮件Service类对框架再封装 50
3.5.4 编写测试类进行测试 51
3.6 使用Shiro 52
3.6.1 基本配置 52
3.6.2 编写业务逻辑代码和页面 53
3.6.3 在代码中引入Shiro 55
3.6.4 测试用户认证和权限管理的效果 58
3.7 实战——开发一个简单的Restful API网关 59
第4章 使用Spring Boot进行数据库开发 64
4.1 配置数据源 64
4.1.1 启动默认数据源 64
4.1.2 配置自定义数据源 65
4.2 使用JdbcTemplate操作数据库 66
4.3 使用Spring Data JPA(Hibernate)操作数据 67
4.3.1 基础知识 67
4.3.2 依赖管理和配置信息 68
4.3.3 使用Spring Data JPA进行开发 69
4.4 整合MyBatis框架 85
4.4.1 MyBatis简介 85
4.4.2 MyBatis的配置 85
4.4.3 Spring Boot整合MyBatis 88
4.4.4 MyBatis的其他配置 89
4.5 实战——商品信息管理小系统 90
第5章 Spring Boot与Redis 103
5.1 使用spring-data-redis操作Redis 103
5.1.1 Spring Data Redis项目的设计 103
5.1.2 RedisTemplate与数据操作类的使用 106
5.1.3 RedisCallback、SessionCallback接口和Redis事务的使用 108
5.2 在Spring Boot中配置和使用Redis 109
5.2.1 通过Starter引入Redis相关依赖并配置Redis 110
5.2.2 Redis数据类型及操作API 112
5.3 Redis的一些特殊用法 125
5.3.1 Redis事务 125
5.3.2 Redis Pipelined和Lua脚本 126
5.3.3 Redis发布订阅 126
5.4 使用Spring缓存注解操作Redis 127
5.4.1 启用缓存和配置缓存管理器 127
5.4.2 使用缓存注解开发 128
5.4.3 类实例方法类内部调用时的失效问题 129
5.4.4 缓存脏数据说明 130
5.5 实战——用Redis改版商品信息管理系统V2.0 130
5.5.1 引入Redis的依赖并配置Redis服务地址和启用缓存 131
5.5.2 添加@Cacheable和@CacheEvict注解 131
5.5.3 运行程序测试缓存效果 133
第6章 Spring Boot整合Elasticsearch 135
6.1 Elasticsearch的使用场景和相关技术 135
6.2 spring-data-elasticsearch支持的Elasticsearch Client 136
6.2.1 Elasticsearch的Client 136
6.2.2 创建RestHighLevelClient 136
6.3 使用operations相关API操作Elasticsearch 137
6.3.1 4个Operations接口 137
6.3.2 搜索结果类型 142
6.3.3 查询条件的封装 143
6.4 Repository的使用 145
6.4.1 使用注解管理索引实体类 145
6.4.2 查询方法的定义 147
6.4.3 使用@Query注解定义查询 148
6.5 在Spring Boot中配置
spring-data-elasticsearch 149
第7章 Spring Boot的日志管理 150
7.1 常用的日志框架 150
7.1.1 日志实现 150
7.1.2 日志门面 151
7.2 Spring Boot支持的日志配置 152
7.2.1 Spring Boot默认支持的日志框架 152
7.2.2 自定义日志配置 153
7.2.3 日志框架的配置文件 157
7.2.4 配置项汇总 157
7.2.5 日志级别 159
7.2.6 日志格式和内容 160
7.2.7 输出到控制台 162
7.2.8 日志组 163
7.3 输出到日志文件的配置 164
7.3.1 配置输出到日志文件 164
7.3.2 日志滚动配置 165
7.4 配置文件扩展 166
7.4.1 定义Profile的个性配置 166
7.4.2 引入Spring Environment Property 167
第8章 Spring Boot的安全与监控 168
8.1 安全控制(使用Spring Security) 168
8.1.1 Spring Security的开启和配置 168
8.1.2 使用Spring Security 171
8.2 使用Actuator监控应用 178
8.2.1 开启Actuator 178
8.2.2 默认配置 179
8.2.3 Actuator的安全控制 182
8.2.4 Health Endpoint的使用 186
8.2.5 Metrics Endpoint 190
8.2.6 自定义Endpoint 195
第9章 Spring Boot数据访问 199
9.1 自动配置默认数据源 199
9.2 自定义一个或多个数据源 204
9.2.1 在使用默认数据源实例的基础上自定义配置 204
9.2.2 配置多个数据源 205
9.3 Spring Data JPA与数据源绑定 207
9.4 数据库的初始化 211
9.4.1 基于SQL脚本初始化数据库 212
9.4.2 使用JPA和Hibernate时初始化数据库 213
第10章 项目实战1——客户管理Web系统 214
10.1 梳理业务需求 214
10.2 技术实现设计 215
10.3 构建项目 216
10.3.1 使用Spring Initializr构建项目 216
10.3.2 配置数据库 220
10.4 创建数据库表 221
10.5 开发客户信息模块 222
10.5.1 开发系统首页 222
10.5.2 开发添加客户页面和接口 223
10.5.3 开发客户列表页面和接口 228
10.5.4 开发编辑客户信息页面和接口 232
10.6 开发交易信息模块 236
10.6.1 在系统首页增加交易信息导航 236
10.6.2 开发“创建交易”页面和接口 236
10.6.3 开发“交易列表”页面 242
10.6.4 开发“编辑交易”页面 243
10.6.5 开发标注发货状态功能 245
第11章 项目实战2——个人博客 249
11.1 梳理业务需求 249
11.2 技术实现设计 250
11.2.1 博客模块 250
11.2.2 用户模块 251
11.2.3 喜欢、取消喜欢博客功能 252
11.3 构建项目 253
11.4 创建数据实体类 255
11.5 开发博客模块 258
11.5.1 开发发布博客接口和页面 259
11.5.2 开发博客列表接口和页面 262
11.5.3 开发博客详情接口和页面 264
11.5.4 实现浏览次数计数功能 266
11.6 开发用户模块 267
11.6.1 开发登录相关接口 267
11.6.2 完成登录页面 273
11.6.3 测试用户登录功能 276
11.6.4 在博客列表页面增加当前用户的显示 277
11.6.5 个人主页页面 280
11.7 实现喜欢/取消喜欢博客功能 283
11.7.1 开发“喜欢博客”接口 283
11.7.2 开发“取消喜欢博客”接口 284
11.7.3 修改博客详情页面接口,返回当前用户是否已喜欢 285
11.7.4 修改博客详情页面,增加喜欢/取消喜欢按钮 286
11.7.5 页面测试 287
11.8 配置Spring Security访问规则 289
11.8.1 创建管理员用户 289
11.8.2 配置接口的访问权限 290
11.8.3 配置仅管理员用户可以发布博客 291
11.8.4 测试发布博客权限管理 293
第12章 Spring Boot项目的测试和部署 295
12.1 配置的切换 295
12.1.1 在项目启动时指定外部配置文件 295
12.1.2 Spring Profile的使用 299
12.2 Spring Boot的测试功能 301
12.2.1 构建测试类 301
12.2.2 测试的自动配置 305
12.3 打包和部署 308
12.3.1 打包(JAR和WAR) 308
12.3.2 运行项目 310
猜您喜欢