spring boot-配置扫描包路径(spring管理的包路径)

Springboot配置扫描其它模块路径的方法

springboot默认会扫描启动类所在的包及其子包;如果想要在启动类所在包以外定义控制器的话需要在启动类重写@ComponentScan。

总结: SpringBoot在写启动类的时候如果不使用@ComponentScan指明对象扫描范围,默认指扫描当前启动类所在的包里的对象。不在自动扫描路径下,需要修改自定义扫描包路径。

方式一:扫描包

单个:@ComponentScan(basePackages = “xxx”)

多个:@ComponentScan(basePackages = {“xxx”,“aaa”,“…”})

注意:可以省略“basePackages =”

demo:

@Configuration
@ComponentScan(basePackages = {"com.test.testcompentscan"})
public class MainConfig {
}

方式二:扫描类

同样返回是String的数组,所以可以是有多个类名!   也可是一个类名!

单个:@ComponentScan(basePackageClasses = “”)

多个:@ComponentScan(basePackageClasses = {“xxx”,“aaa”,“…”})

注意:不可以省略“basePackageClasses =”

apollo官方代码demo:

@EnableAspectJAutoProxy
@Configuration
@EnableAutoConfiguration
@EnableTransactionManagement
@ComponentScan(basePackageClasses = {ApolloCommonConfig.class,
    PortalApplication.class, PortalOpenApiConfig.class})
public class PortalApplication {

  public static void main(String[] args) throws Exception {
    SpringApplication.run(PortalApplication.class, args);
  }
}

basePackageClasses属性会去扫描类所在包下的所有组件,而不是指定某个组件!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西京刀客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值