×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
一步一步学Spring Boot 微服务项目实战 第2版

一步一步学Spring Boot 微服务项目实战 第2版

¥26.1 (3.8折) ?
1星价 ¥37.3
2星价¥37.3 定价¥69.0

温馨提示:5折以下图书主要为出版社尾货,大部分为全新(有塑封/无塑封),个别图书品相8-9成新、切口有划线标记、光盘等附件不全详细品相说明>>

暂无评论
图文详情
  • ISBN:9787302542483
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:314
  • 出版时间:2019-12-01
  • 条形码:9787302542483 ; 978-7-302-54248-3

本书特色

本书深入浅出地介绍了Spring Boot 2.x在Web应用开发中的各种技术。全书共21章,第1章由零开始,引导读者快速搭建Spring Boot开发环境,为之后Spring Boot的探险之旅奠定基础。第2章、第3章、第10章和第13章介绍了Spring Boot的数据访问应用,包括Spring Boot集成Druid、Spring Data JPA和MyBatis以及快速访问MySQL和MongoDB数据库。第4~6章,介绍了Spring Boot集成Thymeleaf模板引擎、事务及拦截器和监听器的应用。第7~9章介绍Spring Boot使用Redis缓存和Quartz定时器、集成Log4J日志框架和发送Email邮件。第11~12章介绍Spring Boot集成ActiveMQ、异步调用和全局异常使用。第14~15章介绍Spring Boot应用监控和应用安全Security。第16~17章介绍Spring Boot微服务在Zookeeper中的注册、Dubbo的使用、多环境配置和使用以及在Tomcat中的部署应用。第18~20章主要探索Spring Boot的容器化、单元测试以及背后的原理和执行流程。第21章以秒杀系统为例,介绍Spring Boot在项目开发中的应用。 本书既介绍了Spring Boot背后的原理和执行流程,又突出了Spring Boot与各种热点技术的整合应用,适用于所有Java编程语言开发人员、Spring Boot开发爱好者以及计算机专业的学生等,也很适合作为培训机构与大专院校的教学用书。

内容简介

本书是一本突出实战的Spring Boot 2.x专业著作,由一线知名互联网公司资深开发工程师精心编写。
本书从零开始,引导读者循序渐进地掌握Spring Boot在Web开发中的各种技术,既注重基础、Spring Boot背后
的原理和执行流程,又突出Spring Boot与各种热点技术的整合应用,如Spring Boot集成MyBatis、ActiveMQ、MongoDB、Redis缓存、Zookeeper、Log4J日志等。此外,还介绍了微服务的多环境配置与部署、微服务的容
器化、微服务测试等当前微服务开发中的**技术,本书*后还给出了一个高并发秒杀系统的开发项目。
本书的目标不仅仅使读者掌握Spring Boot的使用,同时能够掌握在Spring Boot的基础上整合各种流行技术开发
自己的Web应用。

目录

目 录 第1章 **个Spring Boot项目 1 1.1 Spring Boot开发环境准备 1 1.1.1 安装JDK 1 1.1.2 安装Intellij IDEA 3 1.1.3 安装Apache Maven 3 1.2 一分钟快速搭建Spring Boot项目 5 1.2.1 使用Spring Initializr新建项目 5 1.2.2 测试 7 1.2.3 Spring Boot三种启动方式 8 1.3 Spring Boot文件目录介绍 9 1.3.1 工程目录 9 1.3.2 入口类 10 1.3.3 测试类 11 1.3.4 pom文件 12 1.4 Spring Boot 2.x新特性 14 1.4.1 配置变更 14 1.4.2 第三方类库升级 14 1.4.3 HTTP/2支持 14 1.4.4 响应式Spring编程支持 14 1.4.5 其他新特性 15 1.5 Maven Helper插件的安装和使用 15 1.5.1 Maven Helper插件安装 15 1.5.2 Maven Helper插件使用 16 1.6 思考题 16 第2章 集成MySQL数据库 18 2.1 MySQL介绍与安装 18 2.1.1 MySQL概述 18 2.1.2 MySQL安装 18 2.2 集成MySQL数据库 19 2.2.1 引入依赖 20 2.2.2 添加数据库配置 20 2.2.3 设计表和实体 20 2.3 集成测试 22 2.3.1 测试用例开发 22 2.3.2 测试 23 2.3.3 Navicat for MySQL客户端安装与使用 23 2.3.4 Intellij IDEA连接MySQL 24 2.4 集成Druid 25 2.4.1 Druid概述 25 2.4.2 引入依赖 26 2.4.3 Druid配置 26 2.4.4 开启监控功能 27 2.4.5 测试 29 2.5 HikariCP连接池 29 2.5.1 HikariCP概述 29 2.5.2 HikariCP的使用 30 第3章 集成Spring Data JPA 32 3.1 Spring Data JPA介绍 32 3.1.1 Spring Data JPA介绍 32 3.1.2 核心接口Repository 33 3.1.3 接口继承关系图 34 3.2 集成Spring Data JPA 34 3.2.1 引入依赖 34 3.2.2 继承JpaRepository 35 3.2.3 服务层类实现 37 3.2.4 增删改查分页简单实现 39 3.2.5 自定义查询方法 40 3.3 集成测试 42 3.3.1 测试用例开发 42 3.3.2 测试 43 3.4 思考题 43 第4章 Thymeleaf模板引擎与集成测试 44 4.1 Thymeleaf模板引擎介绍 44 4.2 使用Thymeleaf模板引擎 45 4.2.1 引入依赖 45 4.2.2 控制层开发 46 4.2.3 Thymeleaf模板页面开发 47 4.3 集成测试 48 4.3.1 测试 48 4.3.2 REST Client工具介绍 49 4.3.3 使用REST Client测试 49 第5章 Spring Boot事务支持 50 5.1 Spring事务介绍 50 5.1.1 Spring事务回顾 50 5.1.2 Spring声明式事务 51 5.1.3 Spring注解事务行为 51 5.2 Spring Boot事务使用 53 5.2.1 Spring Boot事务介绍 53 5.2.2 类级别事务 53 5.2.3 方法级别事务 54 5.2.4 测试 55 5.3 思考题 56 第6章 使用过滤器和监听器 57 6.1 Spring Boot使用过滤器Filter 57 6.1.1 过滤器Filter介绍 57 6.1.2 过滤器Filter的使用 58 6.1.3 测试 60 6.2 Spring Boot使用监听器Listener 60 6.2.1 监听器Listener介绍 60 6.2.2 监听器Listener的使用 61 6.2.3 测试 62 第7章 集成Redis缓存 63 7.1 Redis缓存介绍 63 7.1.1 Redis概述 63 7.1.2 Redis服务器安装 63 7.1.3 Redis缓存测试 65 7.2 Spring Boot集成Redis缓存 71 7.2.1 Spring Boot缓存支持 71 7.2.2 引入依赖 71 7.2.3 添加缓存配置 72 7.2.4 测试用例开发 72 7.2.5 测试 73 7.3 Redis缓存在Spring Boot中的使用 74 7.3.1 监听器Listener开发 74 7.3.2 项目启动缓存数据 76 7.3.3 更新缓存数据 76 7.3.4 测试 77 第8章 集成Log4J日志 79 8.1 Log4J概述 79 8.2 集成Log4J2 81 8.2.1 引入依赖 81 8.2.2 添加Log4J配置 82 8.2.3 创建log4j2.xml文件 82 8.3 使用Log4J记录日志 83 8.3.1 打印到控制台 83 8.3.2 记录到文件 84 8.3.3 测试 86 8.4 思考题 87 第9章 Quartz定时器和发送Email 88 9.1 使用Quartz定时器 88 9.1.1 Quartz概述 88 9.1.2 引入依赖 90 9.1.3 定时器配置文件 90 9.1.4 创建定时器类 92 9.1.5 Spring Boot扫描配置文件 94 9.1.6 测试 94 9.2 Spring Boot发送Email 94 9.2.1 Email介绍 94 9.2.2 引入依赖 95 9.2.3 添加Email配置 95 9.2.4 在定时器中发送邮件 96 9.2.5 测试 99 第10章 集成MyBatis 100 10.1 MyBatis介绍 100 10.2 集成MyBatis的步骤 100 10.2.1 引入依赖 100 10.2.2 添加MyBatis配置 101 10.2.3 Dao层和Mapper文件开发 101 10.2.4 测试 104 第11章 异步消息与异步调用 106 11.1 JMS消息概述 106 11.2 Spring Boot集成ActiveMQ 107 11.2.1 ActiveMQ概述 107 11.2.2 ActiveMQ的安装 108 11.2.3 引入依赖 109 11.2.4 添加ActiveMQ配置 109 11.3 使用ActiveMQ 110 11.3.1 创建生产者 110 11.3.2 创建消费者 113 11.3.3 测试 114 11.4 Spring Boot异步调用 118 11.4.1 异步调用概述 118 11.4.2 @Async使用 118 11.4.3 测试 119 第12章 全局异常处理与Retry重试 122 12.1 全局异常介绍 122 12.2 Spring Boot全局异常使用 123 12.2.1 自定义错误页面 123 12.2.2 测试 124 12.2.3 全局异常类开发 124 12.2.4 测试 127 12.3 Retry重试机制 127 12.3.1 Retry重试概述 127 12.3.2 Retry重试机制使用 128 12.3.3 测试 130 第13章 集成MongoDB数据库 131 13.1 MongoDB数据库介绍 131 13.1.1 MongoDB的安装 131 13.1.2 NoSQL Manager for MongoDB客户端的使用 133 13.2 集成MongoDB 134 13.2.1 引入依赖 134 13.2.2 添加MongoDB配置 134 13.2.3 连接MongoDB 135 13.2.4 测试 137 第14章 集成Spring Security 138 14.1 Spring Security概述 138 14.2 集成Spring Security的步骤 139 14.2.1 引入依赖 139 14.2.2 配置Spring Security 140 14.2.3 测试 142 14.2.4 数据库用户授权登录 142 14.2.5 测试 149 第15章 Spring Boot应用监控 150 15.1 应用监控介绍 150 15.2 使用监控 151 15.2.1 引入依赖 151 15.2.2 添加配置 151 15.2.3 测试 152 15.3 自定义端点 155 15.3.1 自定义端点EndPoint 155 15.3.2 测试 156 15.3.3 自定义HealthIndicator 157 15.3.4 测试 160 15.4 保护Actuator端点 161 第16章 集成Dubbo和Zookeeper 163 16.1 Zookeeper的介绍与安装 163 16.1.1 Zookeeper概述 163 16.1.2 Zookeeper的安装与启动 164 16.2 Spring Boot集成Dubbo 165 16.2.1 Dubbo概述 165 16.2.2 服务与接口拆分思路 167 16.2.3 服务与接口拆分实践 167 16.2.4 正式版发布 171 16.2.5 Service服务端开发 172 16.2.6 Service服务注册 173 16.2.7 Client客户端开发 174 第17章 多环境配置与部署 175 17.1 多环境配置概述 175 17.2 多环境配置的使用 177 17.2.1 添加多个配置文件 177 17.2.2 配置激活选项 177 17.2.3 测试 178 17.3 自定义属性与加载 179 17.3.1 自定义属性 179 17.3.2 参数间的引用 181 17.3.3 使用随机数 182 17.4 部署 184 17.4.1 Spring Boot内置Tomcat 184 17.4.2 Intellij IDEA配置Tomcat 185 17.4.3 war包部署 187 17.4.4 测试 187 17.5 热部署 188 17.6 思考题 189 第18章 微服务容器化 191 18.1 Docker概述 191 18.1.1 Docker的优势 191 18.1.2 Docker的基本概念 193 18.1.3 Docker架构 194 18.1.4 Docker的安装 195 18.2 Docker的常用命令 198 18.3 制作与自动化构建镜像 205 18.3.1 制作镜像 205 18.3.2 使用Dockerfile构建镜像 208 18.4 Spring Boot集成Docker 212 第19章 微服务测试 217 19.1 Spring Boot单元测试 217 19.1.1 关于测试 217 19.1.2 微服务测试 218 19.2 Spring Boot单元测试 220 19.3 Mockito/PowerMockito测试框架 223 19.3.1 Mockito概述 223 19.3.2 Mockito简单实例 224 19.3.3 PowerMock概述 227 19.3.4 PowerMockito简单实例 228 19.4 H2内存型数据库 231 19.4.1 H2概述 231 19.4.2 Spring Boot集成H2 231 19.5 REST API测试 235 19.5.1 Postman概述 235 19.5.2 Postman的简单使用 235 19.6 性能测试 238 19.6.1 AB概述 238 19.6.2 AB测试 239 第20章 Spring Boot原理解析 241 20.1 回顾入口类 241 20.1.1 DemoApplication入口类 241 20.1.2 @SpringBootApplication的原理 242 20.1.3 SpringApplication的run方法 243 20.1.4 SpringApplicationRunListeners监听器 245 20.1.5 ApplicationContextInitializer接口 246 20.1.6 ApplicationRunner与CommandLineRunner 247 20.2 SpringApplication执行流程 248 20.3 spring-boot-starter原理 250 20.3.1 自动配置条件依赖 250 20.3.2 Bean参数获取 255 20.3.3 Bean的发现与加载 256 20.3.4 自定义starter 263 20.4 跨域访问 269 20.5 优雅关闭 270 20.5.1 Java优雅停机 270 20.5.2 Spring Boot优雅停机 273 20.6 将SSM/Maven项目改造为Spring Boot项目 276 20.6.1 创建Maven项目 276 20.6.2 **种改造方法 278 20.6.3 第二种改造方法 279 20.7 思考题 281 第21章 实战高并发秒杀系统 283 21.1 秒杀系统业务 283 21.1.1 什么是秒杀 283 21.1.2 秒杀系统的工作流程 284 21.2 秒杀系统的简单实现 284 21.2.1 创建Spring Boot项目 284 21.2.2 库表设计与Model实体类 285 21.2.3 集成MySQL和JPA 290 21.2.4 Service服务层的设计与开发 292 21.2.5 Controller控制层的设计与开发 295 21.2.6 前端页面的设计与开发 297 21.2.7 代码测试 300 21.2.8 总结 301 21.3 秒杀系统读优化 302 21.3.1 高并发读优化 302 21.3.2 使用Redis缓存 302 21.4 流量削峰 306 21.4.1 流量削峰的原因 306 21.4.2 集成ActiveMQ 306 21.4.3 生产者开发 307 21.4.4 消费者开发 308 21.5 业务优化 310 21.5.1 答题/验证码 310 21.5.2 分时分段 311 21.5.3 禁用秒杀按钮 311 21.6 降级、限流、拒绝服务 311 21.6.1 降级 311 21.6.2 限流 312 21.6.3 拒绝服务 312 21.7 避免单点 312 21.8 总结 313 参考文献 314
展开全部

作者简介

黄文毅 CSDN博客专家,高级软件工程师。先后就职于厦门星耀蓝图、上海美团等科技公司,目前就职于厦门美图科技有限公司,从事Java开发工作。具有丰富的软件开发经验,熟悉Java、高并发、大数据及相关软件架构。出版《公布式微服务架构:原理与实践》《Spring 5企业级开发实战》(与人合著)《Spring MVC MyBatis快速开发与项目实战》等多部技术图书。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航