[SpringBoot] 通过spring.factory文件来加载第三方的bean

    1.在springboot的开发过程中,我们经常需要加载一些bean,如果bean使我们自己写的类,那很好办,加个@Component注解就搞定了,然后过程启动会扫描启动类所在的包及其子包,如果我们需要的bean不在自己的包里面,在第三方包怎么办?通过注解可以import进来,这个当然可以,这里介绍一个使用spring.factories文件的方法
    2.加入我们只做了一个包,里面有一个bean,我们期望工程启动的时候就加载这个bean到容器,我们的包是提供给其他人使用的,其他工程的启动了类所在的路径不能覆盖这个bean所在的包路径,通过ComponouneScan扫描太麻烦了,而且需求是工程启动后就加载bean,我们可以这样做:

在包下面的resources下面新建文件/META-INF/spring.factories文件,里面写上下面的内容:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.xxx.xxx.TraceListenerAutoConfig 

右边是你的一个类,然后在这个类里面写入:

@Configuration
@EnableConfigurationProperties
public class TraceListenerAutoConfig {

    @Bean
    MyTraceListener myTraceListener() {
        return new MyTraceListener();
    }

}
    3.到此大功告成,工程启动,MyTraceListener就作为一个bean加载到容器了,注意这里不要使用@Autowire的形式,那样可能会报bean找不到的错误;
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值