Spring Boot 三大特性:

  • 组件自动装配:Web MVC 、Web Flux 、JDBC等 
  • 嵌入式Web容器:Tomcat、Jetty以及Undertow
  • 生产准备特性:指标、健康检查、外部化配置等

组件自动装配:

    • 激活:@EnableAutoConfiguration
    • 配置:/META-INF/spring.factories
    • 实现:XXXAtuoConfiguration

嵌入式Web容器:

    • web Servlet : Tomcat、jetty和Undertow
    • web Reactive: Netty Web Server

生产准备特性:

    • 指标:/actuator/metrics
    • 健康检查:/actuator/health
    • 外部分化配置 :/actuator/configprops

传统 Servlet 应用:

  • Servlet组件:Servlet、Filter、Listener
  • Servlet注册:Servlet注解、Spring Bean、registrationBean
  • 异步非阻塞:异步Servlet、非阻塞Servlet

Spring Web MVC:

  • Web MVC 视图:模板引擎、内容协商、异常处理等
  • Web MVC REST:资源服务、资源跨域、服务发现等
  • Web MVC 核心:核心架构、处理流程、核心组件

Spring Web Flux 应用:

对servlet的补充

  • Reactor基础:java Lambda、Mono、Flux
  • Web Flux 核心:Web MVC 注解、函数式声明、异步非阻塞
  • Web Flux

Web Server 应用

  • 切换Web Server
  • 自定义Servlet Web Server
  • 自定义Reactive Web Server

关系型数据

  • JDBC:数据源、JdbcTemplate、自动装配
  • JPA :实体映射关系、实体操作、自动装配
  • 事务:事务抽象、自动装配

功能扩展

  • SpringApplication:失败分析、应用特性、时间监听等
  • spring Boot配置:外部化配置、Profile、配置属性
  • Spring Boot Starter:Starter 开发、最佳实践

springBoot相关(二)的更多相关文章

  1. SpringBoot开发二十-Redis入门以及Spring整合Redis

    安装 Redis,熟悉 Redis 的命令以及整合Redis,在Spring 中使用Redis. 代码实现 Redis 内置了 16 个库,索引是 0-15 ,默认选择第 0 个 Redis 的常用命 ...

  2. SpringBoot入门二:与Mybatis整合

    一.编程步骤 1.引入依赖 springboot相关依赖(略).mybatis-spring-boot-starter.mysql.druid.lombook <dependency> & ...

  3. springboot 入门二- 读取配置信息一

    在上篇入门中简单介绍下springboot启动使用了大量的默认配置,在实际开发过程中,经常需要启动多个服务,那端口如何手动修改呢? 此篇就是简单介绍相关的配置文件信息. Spring Boot允许外部 ...

  4. SpringBoot(二)Web整合开发

    Spring Boot (二):Web 综合开发 本篇文章接着上篇内容继续为大家介绍spring boot的其它特性(有些未必是spring boot体系桟的功能,但是是spring特别推荐的一些开源 ...

  5. SpringBoot相关的注解

    一.注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan.@Configuration和@EnableAutoConfiguration ...

  6. SpringBoot笔记二:整合篇

    Spring Boot与缓存 jsr-107 Java Caching定义了5个核心接口分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry. ...

  7. springboot(十二):springboot如何测试打包部署

    有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发.调试.打包到最后的投产上线. 开发阶段 单元 ...

  8. SpringBoot系列二:SpringBoot自动配置原理

    主程序类的注解 @SpringBootApplication 注解,它其实是个组合注解,源码如下: @Target({ElementType.TYPE}) @Retention(RetentionPo ...

  9. SpringBoot学习(二)-->Spring的Java配置方式

    二.Spring的Java配置方式 Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置. 1.@Configuration 和 @Bean Spring的Java配置方式是通过 @ ...

随机推荐

  1. (3.1)狄泰软件学院C++课程学习剖析二

    深度剖析C++第二部分 1.通过对象名能够访问public成员变量.每个对象的成员变量都是专属的,成员变量不能够在对象之间共享. 2.需求:统计在程序运行期间某个类的对象数目,保证程序的安全性(不能使 ...

  2. (转)字符编码笔记:ASCII,Unicode 和 UTF-8

    转:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 今天中午,我突然想搞清楚 Unicode 和 UTF-8 之 ...

  3. php中的构造函数与析构函数

    PHP面向对象——构造函数.析构函数 __construct.__destruct__construct 构造方法,当一个对象创建时调用此方法,使用此方法的好处是:可以使构造方法有一个独一无二的名称, ...

  4. pandas向左移动非空单元格

    碰到个小问题, 因为需要更改excel 的行为. 处理最多的还是excel的事, 不过看起来是excel.实际上对pandas 的库的熟悉.读取,更改,应用等等,方法. 十分有用. 先说需求,本来的表 ...

  5. Support Vector Machine(2):Lagrange Duality求解线性可分SVM的最佳边界

    在上篇文章<Support Vector Machine(1):线性可分集的决策边界>中,我们最后得到,求SVM最佳Margin的问题,转化为了如下形式: 到这一步后,我个人又花了很长的时 ...

  6. 关于狗书《Flask web开发 基于python的Web开发应用实战》中加入用户隐私功能

    目前是第二次撸狗书,在用户页面这一块我个人觉得有些问题(基于交互设计).按理来说,我作为一个权限只有User的个人用户来说,肯定不喜欢让别人看到我的真实姓名,地址之类的敏感信息.所以我应该是可以设置成 ...

  7. 线程池之ThreadPoolExecutor源码解析

    1.变量 ThreadPoolExecutor先定义了这几个常量,初看时一脸懵逼,其实它就是用int的二进制高三位来表示线程池的状态, 先回顾一下位运算: <<’左移:右边空出的位置补0, ...

  8. unittest单元测试(简单算法题)

    创建测试用例case.py文件 #创建类 class test (): def __init__(self,a,c): self.a =int(a) self.c =int (c) #加 def ad ...

  9. Pytest+Allure2+Jenkins搭建

    前置: (1)安装Python3(这里版本为3.7) (2)搭建Jenkins环境 一.安装pytest 直接使用pip安装(这里由于笔者的环境同时安装了Python2和Python3,所以在pyth ...

  10. deepin下安装配置git

    https://blog.csdn.net/menglinjie/article/details/77145537 1.安装gitsudo apt-get install git12.配置用户名和邮箱 ...