springboot 启动类注解 @SpringBootApplication 和 @ComponentScan 的问题


启动类注解 @SpringBootApplication 其实就包含了 @ComponentScan 注解,

所以这两者不能同时用,如果同时用了,@SpringBootApplication 注解自带的 @ComponentScan 注解就不生效了,

这样会导致启动类所在的包,除了被自己加的这个 @ComponentScan 关联的会映射到,原本的反而都映射不到了,

导致访问 api 可能出现 404 ,所以如果一定要同时用,只能使用  @ComponentScans(注意,这个是加了 “s” 的),

springboot 这些注解很奇怪,@SpringBootApplication 和  一个 @ComponentScan 一起用不行,但是和多个  @ComponentScan 一起用就可以了,

你可以多写几个  @ComponentScan,也可以直接用  @ComponentScans 

 @ComponentScans 的写法,如下:

@SpringBootApplication
@ComponentScans({@ComponentScan("com.xxx")})


使用多个时:
@ComponentScans({@ComponentScan("com.xxx1"),@ComponentScan("com.xxx2")})


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM