SpringBoot2实战之旅

SpringBoot2实战之旅

编辑推荐

本书是作者使用Spring Boot进行应用开发的经验总结。

内容简介

Spring Boot框架是目前微服务框架的最佳选择之一。本书采用Spring Boot 2.0.3版本讲解,从零起步系统深入地剖析了Spring Boot的核心技术。从功能点出发,每一章都是不同的Spring Boot应用之旅。全书分为14章,第1章和第2章是学习Spring Boot的入门阶段,从Spring Boot简介到开发环境部署等,让读者对Spring Boot有一个初步的认识;第3章到第10章是Spring Boot的融合阶段,介绍了Spring Boot搭建Web项目、操作数据库、使用缓存、日志、整合安全框架、结合消息队列和搜索框架,这些都是日常开发中一定会用到的内容,经过这个阶段的学习,会让读者熟练地运用Spring Boot进行敏捷开发。第11章和第12章是Spring Boot的拓展阶段,主要介绍了Spring Boot的一些常用的功能和如何在实际应用中的部署。第13章和第14章是Spring Boot的实战阶段,经过这两章的学习,使读者对Spring Boot的运用更加熟练,掌握实际项目的开发技能。

本书的特点是示例代码丰富,实用性和系统性较强,读者可以直接还原书中的示例。本书适用于初学者、Java开发人员、Spring爱好者和架构师。

作者简介

作者杨洋,网名大老杨,高级Java工程师,热衷于各种主流技术,长期钻研微服务,对Spring Boot和Spring Cloud有深入的研究,并且具备丰富的实战经验。目前在北京一家金融公司担任技术负责人,负责公司主要产品的开发和维护,长期活跃于各大技术论坛、博客,分享新技术与开发经验。

章节目录

版权信息

作者简介

内容简介

前言

如何阅读本书

本书读者对象

本书技术支持

源代码下载

致谢

第1章 Spring Boot概述

1.1 Spring Boot简介

1.2 Spring Boot的特点

1.2.1 快速构建项目

1.2.2 嵌入式Web容器

1.2.3 易于构建任何应用

1.2.4 自动化配置

1.2.5 开发者工具

1.2.6 强大的应用监控

1.2.7 默认提供测试框架

1.2.8 可执行Jar部署

1.2.9 IDE多样性

1.3 为什么要学习Spring Boot

1.3.1 简化工作

1.3.2 微服务时代

1.3.3 社区背景强大

1.3.4 市场需求

1.4 Spring Boot的发展历史

1.4.1 发布里程碑(2013.8.6)

1.4.2 Spring Boot 1.0(2014.4)

1.4.3 Spring Boot 1.1(2014.6)

1.4.4 Spring Boot 1.2(2015.3)

1.4.5 Spring Boot 1.3(2016.12)

1.4.6 Spring Boot 1.4(2017.1)

1.4.7 Spring Boot 1.5(2017.2)

1.4.8 Spring Boot 2.0(2018.3)

1.5 小结

第2章 走进Spring Boot

2.1 环境搭建

2.1.1 JDK安装

2.1.2 IntelliJ IDEA的安装

2.1.3 Maven的安装

2.1.4 IntelliJ IDEA内配置JDK和Maven

2.2 新建Spring Boot项目

2.2.1 开始创建项目

2.2.2 配置JDK版本和Initializr Service URL

2.2.3 配置Project Metadata信息

2.2.4 配置Spring Boot版本及默认引入组件

2.2.5 配置项目名称和项目位置

2.3 项目工程介绍

2.3.1 Java类文件

2.3.2 资源文件

2.3.3 测试类文件

2.3.4 pom文件

2.4 运行项目

2.5 小结

第3章 Spring Boot的Web之旅

3.1 Spring Boot的第一个Web项目

3.1.1 加入Web依赖

3.1.2 创建Controller

3.1.3 测试运行

3.2 WebFlux的使用

3.2.1 添加WebFlux依赖

3.2.2 创建一个处理方法类

3.2.3 创建一个Router类

3.2.4 测试运行

3.3 使用热部署

3.4 配置文件

3.4.1 配置文件类型

3.4.2 自定义属性

3.4.3 使用随机数

3.4.4 多环境配置

3.4.5 自定义配置文件

3.5 使用页面模板

3.5.1 使用Thymeleaf

3.5.2 使用FreeMarker

3.5.3 使用传统JSP

3.6 使用WebJars

3.7 国际化使用

3.8 文件的上传和下载

3.9 小结

第4章 Spring Boot的数据库之旅

4.1 使用数据库

4.1.1 使用MySQL数据库

4.1.2 使用SQL Server数据库

4.1.3 使用Oracle数据库

4.1.4 使用MongoDB数据库

4.1.5 使用Neo4j数据库

4.1.6 使用Redis数据库

4.1.7 使用Memcached数据库

4.2 使用JDBC操作数据库

4.2.1 JDBC依赖配置

4.2.2 配置数据库信息

4.2.3 创建实体类

4.2.4 使用Controller进行测试

4.3 使用JPA操作数据库

4.3.1 JPA介绍

4.3.2 JPA依赖配置

4.3.3 配置文件

4.3.4 创建实体对象

4.3.5 创建数据操作层

4.3.6 简单测试运行

4.3.7 JPA扩展学习

4.3.8 基于WebFlux的使用

4.4 使用MyBatis操作数据库

4.4.1 MyBatis简介

4.4.2 MyBatis依赖配置

4.4.3 配置文件

4.4.4 基于XML的使用

4.4.5 基于注解使用

4.4.6 测试运行

4.4.7 Mybatis-Generator插件学习

4.4.8 PageHelper插件

4.4.9 Mybatis-Plus插件

4.5 配置多数据源

4.5.1 多数据源情况分析

4.5.2 配置多数据源

4.5.3 基于JPA使用多数据源

4.5.4 基于MyBatis使用多数据

4.6 使用Druid数据库连接池

4.6.1 Druid简介

4.6.2 配置Druid

4.6.3 操作数据库

4.6.4 Druid监控页面介绍

4.7 小结

第5章 Spring Boot的缓存之旅

5.1 使用Spring Cache

5.1.1 Spring Cache简介

5.1.2 配置Spring Cache依赖

5.1.3 测试运行

5.1.4 验证缓存

5.2 使用Redis

5.2.1 Redis简介

5.2.2 项目配置

5.2.3 测试运行

5.2.4 使用Redis缓存

5.3 使用Memcached

5.3.1 Memcached简介

5.3.2 配置Memcached依赖

5.3.3 使用Memcached缓存

5.3.4 Redis与Memcached的区别

5.4 小结

第6章 Spring Boot的日志之旅

6.1 Logback日志

6.1.1 Logback简介

6.1.2 日志格式

6.1.3 控制台输出

6.1.4 日志文件输出

6.1.5 日志级别

6.1.6 日志配置

6.1.7 基于XML配置日志

6.2 Log4j日志

6.2.1 Log4j简介

6.2.2 Spring Boot使用Log4j

6.2.3 控制台输出

6.2.4 日志文件输出

6.3 Log4j 2日志

6.3.1 Log4j 2简介

6.3.2 Spring Boot使用Log4j 2

6.3.3 控制台输出

6.3.4 日志文件输出

6.3.5 异步日志

6.4 ELK日志收集

6.4.1 ELK日志收集流程介绍

6.4.2 ELK安装

6.4.3 ELK配置

6.4.4 使用Kibana查看日志

6.4.5 Spring Boot直接输出到Logstash

6.4.6 ELK日志收集优化方案及建议

6.5 小结

第7章 Spring Boot的安全之旅

7.1 使用Shiro安全管理

7.1.1 什么是Shiro

7.1.2 使用Shiro做权限控制

7.2 使用Spring Security

7.2.1 Spring Security简介

7.2.2 使用Spring Security做权限控制

7.3 小结

第8章 Spring Boot的监控之旅

8.1 使用actuator监控

8.1.1 actuator是什么

8.1.2 如何使用actuator

8.1.3 actuator监控介绍

8.1.4 保护HTTP端点

8.1.5 健康信息

8.1.6 自定义应用程序信息

8.1.7 自定义管理端点路径

8.2 使用Admin监控

8.2.1 什么是Spring Boot Admin

8.2.2 设置Spring Boot Admin Server

8.2.3 Spring Cloud Eureka

8.2.4 Spring Boot Admin Client的使用

8.2.5 安全验证

8.2.6 JMX-bean管理

8.2.7 通知

8.3 Prometheus+Grafana监控

8.3.1 Prometheus的安装

8.3.2 Grafana的安装

8.3.3 Spring Boot项目使用Prometheus

8.3.4 Prometheus配置

8.3.5 启动Grafana

8.4 小结

第9章 Spring Boot的消息之旅

9.1 RabbitMQ消息队列

9.1.1 RabbitMQ介绍

9.1.2 RabbitMQ的几种角色

9.1.3 RabbitMQ的几种模式

9.1.4 Spring Boot使用RabbitMQ

9.2 Kafka消息队列

9.2.1 Kafka介绍

9.2.2 Spring Boot使用Kafka

9.3 RocketMQ消息队列

9.3.1 RocketMQ介绍

9.3.2 Spring Boot使用RocketMQ

9.4 消息队列对比

9.5 小结

第10章 Spring Boot的搜索之旅

10.1 使用Solr

10.1.1 Solr简介

10.1.2 Spring Boot使用Solr

10.2 使用Elasticsearch

10.2.1 Elasticsearch简介

10.2.2 Spring Boot使用Elasticsearch

10.2.3 使用Elasticsearch Repository进行操作

10.2.4 使用Elasticsearch Template进行操作

10.2.5 非聚合查询

10.2.6 聚合查询

10.2.7 复杂查询练习

10.3 搜索引擎对比

10.3.1 技术背景

10.3.2 热度比较

10.3.3 集群部署

10.3.4 数据格式

10.3.5 效率

10.4 小结

第11章 Spring Boot的小彩蛋

11.1 修改启动Banner

11.1.1 启动Banner介绍

11.1.2 启动Banner修改

11.2 使用LomBok让编程更简单

11.2.1 什么是LomBok

11.2.2 IntelliJ IDEA安装Lombok插件

11.2.3 如何使用LomBok

11.3 邮件发送

11.3.1 在Spring Boot中使用邮件发送

11.3.2 基础配置信息

11.3.3 文本邮件发送

11.3.4 网页邮件发送

11.3.5 附件邮件发送

11.3.6 嵌入静态资源邮件发送

11.4 三“器”的使用

11.4.1 过滤器

11.4.2 拦截器

11.4.3 监听器

11.4.4 Spring Boot引用三“器”

11.4.5 测试

11.5 事务使用

11.5.1 事务介绍

11.5.2 在项目中使用事务

11.5.3 Spring事务拓展介绍

11.6 统一处理异常

11.6.1 异常介绍

11.6.2 Java异常分类

11.6.3 Spring Boot中统一处理异常

11.7 使用AOP

11.7.1 AOP介绍

11.7.2 Spring Boot使用AOP

11.8 使用validator后台校验

11.9 使用Swagger构建接口文档

11.9.1 什么是Swagger

11.9.2 Swagger 2注解介绍

11.9.3 Spring Boot使用Swagger

11.10 使用ApiDoc构建接口文档

11.10.1 如何使用ApiDoc接口文档

11.10.2 ApiDoc常用注解

11.10.3 Spring Boot使用ApiDoc

11.11 小结

第12章 Spring Boot打包部署

12.1 使用IDE启动

12.1.1 运行Spring Boot应用程序

12.1.2 IntelliJ IDEA启动多实例

12.2 使用Maven启动

12.3 JAR形式启动

12.3.1 使用命令将Spring Boot应用程序打成JAR

12.3.2 IntelliJ IDEA打JAR包

12.4 War形式启动

12.4.1 创建项目

12.4.2 打War包部署到Tomcat

12.5 使用Docker构建Spring Boot项目

12.5.1 Docker简介

12.5.2 安装Docker

12.5.3 Dockerfile

12.5.4 运行Docker镜像

12.6 使用Jenkins自动化部署Spring Boot应用

12.6.1 Jenkins简介

12.6.2 Spring Boot应用使用Jenkins

12.7 小结

第13章 Spring Boot实战之博客系统

13.1 博客的制作思路

13.1.1 博客布局介绍

13.1.2 博客功能介绍

13.2 博客模板制作

13.3 效果展示

13.4 依赖配置

13.5 配置文件

13.6 后台实体

13.6.1 文章表

13.6.2 标签表

13.6.3 链接表

13.6.4 消息表

13.6.5 博客访问记录表

13.6.6 博客配置表

13.7 主功能

13.7.1 博客页

13.7.2 搜索页

13.7.3 文章详情页

13.7.4 联系页

13.8 辅助功能

13.8.1 拦截器

13.8.2 定时器

13.8.3 初始化

13.9 小结

第14章 Spring Boot实战之博客后台系统

14.1 博客后台的制作思路

14.1.1 博客后台布局介绍

14.1.2 博客功能介绍

14.2 博客后台模板制作

14.3 效果展示

14.4 依赖配置

14.5 配置文件

14.6 后台实体

14.6.1 用户表

14.6.2 角色表

14.7 主功能

14.7.1 首页

14.7.2 文章管理

14.8 辅助功能

14.8.1 拦截器

14.8.2 定时器

14.8.3 认证和授权

14.8.4 工具类

14.8.5 初始化方法

14.9 小结

参考文献

SpringBoot2实战之旅是2019年由清华大学出版社出版,作者杨洋。

得书感谢您对《SpringBoot2实战之旅》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
Terraform实战 电子书

本书基于实际项目,揭示如何使用Terraform自动扩展和管理基础架构。
WebAssembly实战 电子书

抽丝剥茧,逐步解构WebAssembly的复杂生态。
Kafka实战 电子书

本书介绍Kafka的应用和使用,适合Java开发者和数据工程师。
机器学习实战 电子书

《机器学习实战》面向日常任务的高效实战内容,介绍并实现机器学习的主流算法。
数据科学实战 电子书

本书注重人文精神,多角度、全方位、深入介绍数据科学的实用指南,堪称大数据时代的实战宝典。
Kafka Streams实战 电子书

本书教读者在Kafka平台上实现流式处理。在这本易于理解的书中,读者将通过实际的例子来收集、转换和聚合数据,使用多个处理器,处理实时事件。
AppInventor开发实战 电子书

AppInventor是MIT开发的流行的可视化编程工具,编程爱好者可以在短时间学会创建炫目的安卓手机应用。