SrpingBoot启动类不添加@ComponentScan也能自动扫描

自己在学习SpringCloud时,遇到了上述疑问。学习视频上没有加@ComponentScan也能自动扫描注解,但公司同事加了@ComponentScan注解,问题:为什么SrpingBoot启动类不添加@ComponentScan也能自动扫描?

参考大佬博客——SpringBoot使用 SpringCloud Fegin 后无法自动扫描接口定义和接口实现

 

把 JAVA 接口定义和接口实现放到主类所在包,或主类所在包的子包。就可以自动扫描到接口定义和接口实现了(而且是不需要在主类中加@ComponentScan(basePackages = {})注解 )。

在 controller 类中要加 @RestController 或 @Controller , service 接口中添加 @Component,service 实现类中添加 @Service 不然是不会把它们当 Bean 初始化的。

注意: Dao 接口加 @Component  或 @Repository 都不会把 dao 当 bean 初始化。只有在应用主类中添加  @MapperScan("com.winterchen.dao") 注解才会初始化dao 作为 bean 初始化,com.winterchen.dao 是 dao 接口所在的包。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值