java autoconfig_【Java】SpringBoot中引入一个starter会将所有的AutoConfig类都加载进容器吗...

我引入spring-boot-starter-web后会引入spring-boot-autoconfigure的jar包。Spring是扫描工程下所有jar包下的META-INF下的spring.factories文件中的内容然后将自动配置类加入容器中,那么是否会将所有的自动配置类加入容器中,如果是这样是不是会很浪费,如果不是选择加载的地方在哪。萌新求大佬解释。

回答

你可以选择把你不想自动配置的类排除掉, 通过注解或配置属性

@Configuration

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

public class MyConfiguration {

}

或是通过配置文件中的spring.autoconfigure.exclude属性把不想加载的配置类排除掉.

嗯,谢谢大神回答。这个排除的方法我学到了。我还是有点疑惑的是,任意一个的starter都会引入spring-boot-autoconfigure所有的自动配置类,并加载到spring容器中吗,如:只引入了web的starter的也会将spring-boot-autoconfigure下的SpringCloud的自动配置类加载进入是吗,我这么理解对吗,还是SpringBoot在加载这些配置的类的时候会自己判断,没有SpringCloud的starter,就不加载SpringCloud的自动配置到Spring的容器中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值