@ComponentScan包名加.*和不加的区别


例如项目结构如下图
@ComponentScan包名加.*和不加的区别

1、@ComponentScan(“com.fred.bean”)

这种情况会扫描到以下Bean
@ComponentScan包名加.*和不加的区别
不带.*的情况是扫描bean包下所有Bean(前提是Bean有注解@Controller、@Service、@Repository、@Component 中的其中一个)会递归包扫描。

2、@ComponentScan(“com.fred.bean.*”)

这种情况会扫描到以下Bean

@ComponentScan包名加.*和不加的区别
扫描会除去bean当前包下的Bean,当前bean包下的所有包都会扫描,也会递归包扫描。(前提是Bean有注解@Controller、@Service、@Repository、@Component 中的其中一个)