定义
@ComponentScan:默认扫描@SpringBootApplication所在类的同级包
作用
-
当启动类和控制器在同一个包下,此时能够访问到对应的请求地址、
-
当启动类所在的包高于控制器所在的包,此时也能访问到请求地址。
例如:启动类在com.sdbairui下
高于控制器所在的包,因此能够访问到对应的请求地址。 -
当启动类和控制器类不在同一个目录下是无法自动扫面控制器,比如启动类在:com.sdbairui.test中,控制器在com.sdbairui.controller中,此时无法扫描到控制器。
解决方法:
在启动类上加该注解:
@ComponentScan(basePackages= {"com.sdbairui.controller"})
其中basePackages的值是一个数组,可以指定多个字符串包,此时就可以扫描到。
如果扫描多个包可以:
@ComponentScan(basePackages= {"com.sdbairui.controller,com.sdbairui.test"})