使用spring.factories加载类和@EnableAutoConfiguration注解

文章介绍了如何在基于SpringBoot的微服务中使用META-INF/spring.factories文件加载Java类,避免手动添加注解。通过创建和修改spring.factories,添加@EnableAutoConfiguration注解,可以在启动时自动加载指定类。对比了使用spring.factories与@Component注解的区别,并展示了spring-boot-autoconfigurejar包中的spring.factories加载的各种自动配置类。

记录:388

场景:基于Spring Boot的应用,可以使用META-INF/spring.factories方式加载Java类。解决提供框架Jar包或者feign接口Jar包给其它微服务使用时,引用该包的微服务无需手动添加注解扫描指定包。@EnableAutoConfiguration注解自动加载spring.factories指定的类。

版本:JDK 1.8,SpringBoot 2.6.3

1.使用spring.factories加载Java类

1.1创建spring.factories

在代码工程的操作目录:../src/main/resources/。

spring.factories全路径:../src/main/resources/META-INF/spring.factories。

1.2引入需要加载的类

(1)修改spring.factories内容

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
  com.hub.example.feign.fallback.CityFeignServiceFallbackImpl,\
  com.hub.example.feign.factory.CityFeignServiceFallbackFactory

(2)解析spring.factories

在spring.factories中使用EnableAutoConfiguration引入需要加载的类,Spring Boot应用在启动时,会自动扫描每个Jar的../META-INF/spring.factories文件,因此这种方式可以加载到类。同时,使用EnableAutoConfiguration引入的类不需要@Component等注解。文件中的\是连接符。

1.3打包直接使用

使用META-INF

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值