SpringBoot 扩展机制 ——Spring.factories文件 如何将外部项目加入Spring容器

本文介绍了SpringBoot的扩展机制,重点讲解如何通过Spring.factories文件将外部项目的配置和类加入Spring容器。Spring.factories位于resource/META-INF下,列出需要扫描的类,使用SpringFactoriesLoader加载。同时提到了@Conditional和@ConditionalOn***的选择性加载机制,以及使用IOC容器对象的两种方式:@Autowired和ApplicationContext。
摘要由CSDN通过智能技术生成

SpringBoot 扩展机制 ——Spring.factories文件 如何将外部项目加入Spring容器

▶ 简介

简单说用于模块之间解耦,外部项目下各种配置、类加入到Spring容器中进行管理,类似JAVA中SPI机制。机制自行百度。

▶ 方式

将外部类引入IOC容器两种方式
1.@import
2.加入Spring.factories文件 — 主讲这个

▶ Spring.factories文件

1.在resource目录下 META-INF/ Spring.factories 文件
2.格式:自定义需要扫描到类(接口),多个用 ”,\“ 隔开
3.SpringFactoriesLoader类会去扫描加载文件下定义类,加入容器
	org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
  	com.mostsnails.common.base.utils.config.WebLogAutoConfiguration,\
  	com.mostsnails.common.base.utils.config.RedisAutoConfiguration,\
  	com.mostsnails.common.base.utils.test.TestClass
注意这里使用EnableAutoConfiguration ,SpringBoot启动类@SpringBootApplication注解包下有@EnableAutoConfiguration和@Component 具体作用开启自动装备,将满足条件@Configuration配置加入到SpringBoot中。
Spring.factories也可以包含其他类型
	# Initializers
org.springframework.context.ApplicationContextInitializer=\
org.springframework.boot.autoconfigure.SharedMetadataReaderFactoryContextInitializer,\
org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLoggingListener

# Application Listeners
org.springframework.context.ApplicationListener=\
org.springframework.boot.autoconfigure.BackgroundPreinitializer
	....
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值