概述
主要包含以下组件
Sentinel 流量控制和服务降级
Nacos 服务注册与发现
Nacos 分布式配置中心
RocketMQ 消息驱动
Seate 分布式事务
Dubbo RPC通信
OSS 阿里云对象存储
springboot自动装配原理
eg:将redis整合到springboot中:
1.添加starter依赖:spring-boot-starter-data-redis
2.在application.properties中配置redis数据源
3.使用@Autowried引入redisTemplate
4.使用
当使用@Autowried注入redisTemplate实例时.说明IOC容器中已经存在RedisTemplate,这是Springboot自动装配而来的
所以,存在一个机制,这个机制的实现基于某种约定或者规范,只要Starter组件符合SpringBoot中自动装配的规范,就能实现自动装配
自动装配的实现
自动装配在SpringBoot中是通过@EnableAutoConfiguration注解开启的,这个注解声明在@SpringBootApplication中
@Enable注解:主要作用是把相关组件的Bean转配到IOC容器中
@Enable注解对JavaConfig进一步完善,常见的@Enable注解有
@EnableWebMvc和@EnableScheduling等
每个@Enable类的注解都包含@Import
@ImportSelector的作用
自动装配的核心是扫描约定目录下的文件进行解析,解析完成后把得到的Configuration配置类通过ImportSelector进行导入,从而完成Bean的自动装配过程
SpringFactoriesLoaderss是Spring内部提供的一种预定俗成的加载方式,类似于Java中的SPI,它会扫描classpath下的METE-INF/spring.factories文件,这个文件的数据由key=value方式存储