1058-Spring Boot 2.0深度实践之系列总览
- 第1章 课程介绍
- 第2章 课程议题
- 第3章 课程总结
https://www.imooc.com/learn/1058
简介:本课程是Spring Boot2.0深度实践系列课程的总览部分,会向大家揭示如何深度学习Spring Boot2.0 ,以及介绍Spring Boot2.0深度实践系列课程中的各类议题。Spring Boot2.0深度实践系列课程分上下两篇,上篇核心技术篇已经上线:https://coding.imooc.com/class/252.html 下篇生态整合篇敬请期待。
第1章 课程介绍
本章如何深度学习Spring Boot2.0 给出一个大的概念上的理解
1-1 Spring Boot2易学难精 (09:15)
易学
组件自动装配:规约大于配置,专注核心业务
外部化配置:一次构建、按需调配,到处运行
嵌入式容器:内置容器、无需部署,独立运行
Spring Boot Starter:简化依赖、按需装配、自我包含
Production-Ready:一站式运维、生态无缝整合
难精
组件自动装配:模式注解、@Enable模块、条件装配、加载机制
外部化配置:Environment抽象、生命周期、破坏性变更
嵌入式容器:Servlet Web容器、Reactive Web容器
Spring Boot Starter:依赖管理、装配条件、装配顺序
Production-Ready:健康检查、数据检查、@Endpoint管控
Spring Boot与Java EE规范
Web:Servlet(JSR315、JSR340)
SQL:JDBC(JSR221)
数据校验:Bean Validation(JSR303、JSR349)
缓存:Java Caching API(JSR107)
WebSockets:Java API for WebSocket(JSR356)Web Services:JAX-WS(JSR224)
Java管理:JMX(JSR3)
消息:JMS(JSR914)
1-2 开场白:系列总览 (02:52)
核心特性、Web应用、数据相关、功能扩展、运维管理、课堂总结
第2章 课程议题
本章总览 Spring Boot 2.0 深度实践系列课程的整体议程,包括 Spring Boot 三大核心特性(组件自动装配、嵌入式Web容器、生产准备特性)、Web 应用(传统 Servlet、Spring Web MVC、Spring WebFlux)、数据相关(JDBC、JPA、事务)、功能扩展(SpringApplication、Spring Boot 配置、Spring Boot Starter)以及运维管理(Endpoint、健康检查、Metrics)。
2-1 核心特性介绍 (03:25)
Spring Boot三大特性
- 组件自动装配:Web MVC、Web Flux、JDBC等
- 嵌入式Web容器:Tomcat、Jetty以及Undertow
- 生产准备特性:指标、健康检查、外部化配置等
2-2 核心特性组件自动装配介绍 (09:10)
组件自动装配
激活:@EnableAutoConfiguration
配置:/META-INF/spring.factories
实现:XXXZAutoConfiguration(WebAutoConfiguration、JdbcTemplateAutoConfiguration)嵌入式Web容器
Web Servlet容器:Tomcat、Jetty和Undertow
Web Reactive:Netty Web ServerWeb Flux基于Web Reactive,也可以基于Servlet3.1
生产准备特性
指标:/actuator/metrics
健康检查:/actuator/health
外部化配置:/actuator/configprops
2-3 核心特性- 组件自动装配-工程部分 - (07:18)
2-4 Web应用介绍 (01:34)
Servlet组件:Servlet、Filter、Listener
Servlet注册:Servlet注解、Spring Bean、RegistrationBean
异步非阻塞:异步Servlet、非阻塞Servlet
2-5 Web 应用 - 传统 Servelt 应用 (09:26)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Servlet组件
Servlet
实现:@WebServlet、HttpServlet、注册
URL映射:@WebServlet(urlPatterns = “/my/servlet”)
注册:@ServletComponentScan(basePackages = “com.imooc.diveinspringboot.web.servlet”)
Filter
Listener
Servlet注册
Servlet注解
@ServletComponentScan:@WebServlet、@WebFilter、@WebListener
Spring Bean
@Bean:Servlet、Filter、Listener
RegistrationBean:ServletRegistrationBean、FilterRegistrationBean、ServletListenerRegistrationBean
2-6 异步非阻塞 Servlet 代码示例 (03:18)
异步 Servlet
javax.servlet.ServletRequest#startAsync()
javax.servlet.AsyncContext
@WebServlet(urlPatterns = "/my/servlet", asyncSupported = true) public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) { AsyncContext asyncContext = req.startAsync(); asyncContext.start(() -> { resp.getWriter().println("Hello, World."); asyncContext.complete(); // 触发完成 }); } }
非阻塞 Servlet
- javax.servlet.ServletInputStream#setReadListener
- javax.servlet.ReadListener
- javax.servlet.ServletOutputStream#setWriteListener
- javax.servlet.WriteListener
2-7 Spring Web MVC 应用介绍 (11:16)
Spring Web MVC 应用
- Web MVC 视图:ViewResolver、View
- 模板引擎:Thymeleaf、Freemarker、JSP
- 内容协商:ContentNegotiationConfigurer、ContentNegotiationStrategy、ContentNegotiatingViewResolver
- 异常处理:@ExceptionHandler、HandlerExceptionResolver(ExceptionHandlerExceptionResolver)、BasicErrorController(springboot)
Web MVC REST
- 资源服务:@RequestMapping(@GetMapping)、@ResponseBody、@RequestBody
- 资源跨域:@CrossOrigin、WebMvcConfigurer#addCorsMappings、传统解决方案(IFrame,JSONP)
- 服务发现:HATEOS
Web MVC 核心
核心架构、处理流程、核心组件(DispatcherServlet、HandlerMapping、HandlerAdapter、ViewResolver)
2-8 Spring Web Flux 应用 (05:33)
2-9 Web Server 应用 (09:08)
2-10 数据相关 (15:01)
2-11 功能扩展 (11:50)
2-12 运维管理 (11:29)
第3章 课程总结
课程总结
3-1 课堂总结 (09:20)
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 tuyrk@qq.com
文章标题:1058-Spring Boot 2.0深度实践之系列总览
文章字数:1k
本文作者:神秘的小岛岛
发布时间:2020-06-13, 00:57:40
最后更新:2020-06-13, 19:03:05
原始链接:https://www.tuyrk.cn/imooc/1058-springboot-2/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。