一、Spring Boot hello world
Spring Boot环境搭建,代码结构,运行方式以及创建简单rest服务。
二、Web篇(上)
静态内容:传统Web Server,Java Web Server以及Spring Boot处理静态内容。
动态内容:介绍传统Servlet容器以及Spring Boot是如何处理动态内容的。
模板引擎:介绍老(JSP),中(Velocity),新(Thymeleaf)三代模板引擎发展,Spring Boot使用方法,以及三者的特征优劣。
三、Web篇(中)
REST理论基础:基本概念、架构属性、架构约束、使用场景、实现框架(服务端、客户端)
REST服务端实践:Spring Boot REST应用、HATEOAS应用、文档生成等。
REST客户端实践:传统浏览器、Apache HttpClient、Spring RestTemplate等相关实践。
四、Web篇(下)
Servlet核心接口、Servlet组件开发和注册、以及应用部署等。
Servlet on Spring Boot:在Spring Boot环境下,开发和注册,以及部署Servlet组件。
JSP on Spring Boot:传统JSP组件在Spring Boot环境下如何适配和运行。
五、嵌入式Web容器
传统 Servlet 容器:介绍 Apache Tomcat、Eclipse Jetty。以 Tomcat 为例,常见容器配置和维护方式。
嵌入式Web容器:介绍嵌入式 Servlet 容器(Tomcat、Jetty)和 非 Servlet 容器(Undertown),配置和自定义嵌入式容器,以及相关限制。
六、数据库 JDBC
数据源(DataSource):分别介绍嵌入式数据源、通用型数据源以及分布式数据源。
事务(Transaction):介绍事务原理,本地事务和分布式事务的使用场景。
JDBC(JSR-221):介绍JDBC 核心接口,数据源、数据库连接、执行语句、事务等核心API的使用方法。
Spring Boot 整合:介绍 Spring Boot 启动器 spring-boot-starter-jdbc,解读DataSource、JdbcTemplate 等自动装配原理。
七、MyBatis
MyBatis :框架简介、核心API说明
配置 :全局XML配置、SQL Mapper XML 配置、SQL Mapper Annotation
自动生成器 :实例讲解代码、配置自动生成
Spring Boot 整合:整合 mybatis-spring-boot-starter
八、JPA
JPA:介绍 JPA 技术背景、标准规范、JPA实现框架以及核心API
Spring Data JPA 整合:以 JPA 实现框架 Hibernate为例,实战整合 Spring Data JPA 技术
Spring Boot 整合:介绍和整合 spring-boot-stater-data-jpa
九、NoSQL
NoSQL:介绍 NoSQL 使用背景、技术发展以及主流中间节
Spring Data 整合:以 Elasticsearch 为例,搭建 Elasticsearch ,整合 Spring Data 技术(如:ElasticsearchTemplate)
Spring Boot 整合:介绍和整合 spring-boot-starter-data-elaticsearch
十、缓存
Java Cache(JSR-107):介绍 Java 标准 Cache 规范、核心 API、主流实现框架
Spring Cache:介绍 Spring Cache 核心 API、Cache 注册、管理等
Cache 实战:实战本地缓存 Guava 和分布式缓存 Redis
Spring Boot 整合:介绍和整合 spring-boot-starter-cache 和 spring-boot-starter-data-redis
十一、消息
JMS(JSR-914):介绍 Java 标准消息服务规范、核心 API、以及主流实现框架
AMQP:简介 高级消息队列协议(AMQP)
Apache Kafka :搭建 Kafka 环境,介绍核心 API
Spring Kafka 整合:Spring 实战整合 Kafka
Spring Boot 整合:Spring Boot 环境 整合 Kafka
十二、验证
Bean Validation(JSR-303):介绍 Java Bean 验证、核心 API、实现框架 Hibernate Validator
Apache commons-validator :介绍最传统 Apache 通用验证器框架,如:长度、邮件等方式
Spring Validator:介绍 Spring 内置验证器 API、以及自定义实现
Spring Boot 整合:解读 spring-boot-starter-validation
十三、WebSocket
WebSocket(JSR-356):简介 WebSocket 协议、解释专业术语(如端点、端和会话等)
生命周期:理解 WebSocket 生命周期(如:开启会话、关闭会话、接受消息等)
核心接口:介绍 Java WebSocket 中的核心API(如:@ServerEndpoint、@ClientEndpoint、@OnOpen等)
实现容器:当前实现 WebSocket 的主流容器,以及 Tomcat Comet 技术
Spring Boot 整合:介绍和整合 spring-boot-starter-websocket
十四、WebService
Web Services:介绍 WSDL 协议、SOAP协议 以及 XML-PRC
JAX-RS(JSR-224):简介 The Java API for XML-Base Web Servces 2.0 规范
Web Serices Metadata(JSR-181):介绍 Web Services Metadata 编程模型、注解、Java 映射等
Spring Boot 整合:介绍和整合 spring-boot-starter-ws
十五、安全
客户端安全:介绍 CSRF、CSP、HTTP Struct Transport Security、X-Frames-Options、X-XSS-Protection 等
服务端安全:Authentication 和 Authorization
Spring Boot 整合:介绍和整合 spring-boot-starter-security
十六、日志
日志框架:介绍主流日志框架,以及发展历程 Apache Log4j -> Java Logging -> Logback -> Apache Log4j2
统一日志API:介绍统一日志API Apache commons-logging 以及 slf4-api
日志设计模式:说明主流日志框架的设计模式
Spring Boot 整合:集合 spring-boot-starter-logging ,分析Spring Boot 日志系统设计
十七、监管
JMX(JSR-3):介绍 Java 标准管理规范,着重说明 MBean、MXBean、属性(Attribute)、操作(Operation)等相关概念
核心API:实战的方式深入探讨服务端和客户端核心API的使用,加深理解
客户端:讲解主流客户端(JConsole、JVisualVM)以及 HTTP 桥接框架 Jolokia
Spring Boot 整合:介绍 Spring 对 JMX 的扩展支持,随后再深入探讨自动装配模块
十八、配置
外部配置:介绍外部配置文件(Properties以及YAML方式)、命令行,以及占位符的使用
配置引用:讲解如何通过编码的方式获取配置项值,以及将该值赋值致Bean的属性上
Profiles:说明 Profiles 使用场景,以及在实际生产环节中如何合理的使用
Environment:通过实战的方式解决和说明Spring Environment接口,以及它与外部配置、Profiles之间的关系
十九、测试
单元测试:简介测试驱动开发,说明单元测试的必要性,以及主流的 Java 单元测试框架
Spring 应用测试 :讲解如何 Spring Test 对Spring 应用进行集成测试
Spring Boot 应用测试:讲解 Spring Boot 应用如何合理地、细粒度地进行集成测试
高端测试框架:介绍 AssertJ以及Mockito 如何高效地进行应用功能测试
二十、自定义启动器
Spring Boot Starter:全面系统地介绍Spring Boot Starter的开发
开发经验:根据实际的经验,分享相关的开发注意事项
系列总结:Java 微服务实践 - Spring Boot 系列收尾,简单回顾期间的相关技术议题,并且预告下一个系列议题:Java 微服务实践 - Spring Cloud 系列
这个大纲是出自小马哥的Java微服务实践https://segmentfault.com/n/1330000009887617