01 内容简介
内容简介
springboot本就是一个专门用来配置的框架,用来整合各种各样的配置。所以主要内容也是与配置相关。
- 配置文件
- web开发
- 数据访问
- 但愿测试
- 指标监控
- 核心原理
。。。
参考文档
https://blog.csdn.net/lin1214000999/article/details/105468338/
1 springboot背景
springboot + springcloud
微服务
- 架构风格
- 小型服务,灵活拆分
- 自动部署
- 去中心化、服务治理
分布式
- 远程调用rpc——http
- 服务发现——网关和注册中心
- 负载均衡和任务调度
- 服务容错——流量控制和熔断
- 配置管理——配置中心
- 服务监控——RMS
- 链路追踪——log
- 日志管理——云图log
云原生
利用云技术构建、部署、运维应用程序的技术。
- 服务自愈
- 弹性伸缩
- 服务隔离
- 自动化部署机制
- 灰度发布,逐渐替代旧版本
- 流量治理

2 springboot概述
基本概念
Spring Boot 是基于 Spring 框架基础上推出的一个全新的框架, 旨在让开发者可以轻松地创建一个可独立运行的,生产级别的应用程序。利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。
框架优势
- 能够轻松、方便地创建一个 Spring 应用;
- 直接使用内嵌的 Tomcat, Jetty, Undertow 容器(无需再手动安装容器,通过部署 WAR 包的方式);
- 内部自动管理各种 Jar 包的版本依赖关系,再也不用为版本冲突而烦恼啦;
- 自动化配置 Spring 相关功能,以及第三方库;
- 提供诸如指标,健康检查, 外部化配置等功能;
- “零配置”,再也不需要手写地狱般的 XML 配置了;
- java8 适配器设计模式。接口有了默认实现。
框架特点
- REST风格
- IOC控制反转
- AOP面向切面
3 Springboot的作用
依赖管理
- 在parent中管理版本信息
- 几乎声明了所有开发中常用的依赖的版本号,自动版本仲裁机制
1 | 依赖管理 |
自动配置
通过java代码的方式,配置好其他组件。它在自动配置领域主要做了以下事情:
- 默认的自动配置。对于所有组件,都指定了默认的约定俗称的最优的自动配置,用户可以不了解具体的配置项,开箱即用,按照约定完成业务逻辑即可。
- 可控的自动配置。对于所有组件,都提供了开放的自动配置接口,xxxProperties中读取并加载用户的配置属性,灵活地集成各种框架,高效快速定制化。
- 自定义自动配置。对于用户自定义的模块和组件,springboot提供了一套自动配置的解决方案,通过springboot的自动配置注解,完成用户自己的模块的自动配置。十分方便。
从初阶的默认配置使用,通过配置文件定制化使用,借用springboot实现第三方模块自动配置的机制实现自定义模块自动配置,总共包括三个层次和阶段。
例如:能够自动引入并配置好tomcat
1 | <dependency> |
- 自动引入并配置好SpringMVC,引入SpringMVC的组件
- 自动配置好web常见的功能
- 默认的包结构(配置好了默认的扫描路径)
1 |
|
- 各种配置拥有默认值
- 默认配置最终都是映射到某个类上,如:MultipartProperties
- 配置文件的值最终会绑定每个类上,这个类会在容器中创建对象
- 按需加载所有自动配置项
- 非常多的starter
- 引入了哪些场景这个场景的自动配置才会开启
- SpringBoot所有的自动配置功能都在 spring-boot-autoconfigure 包里面
知识体系

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Estom的博客!










