@ComponentScan和@SpringBootApplication使用后都会出现这个图标,而@SpringBootApplication注解之所以会出现这个图标是因为在该注解内使用到了@ComponentScan注解,表示进行了组件扫描。例如:
当在类上使用@Controller、@Service、@Repository、@Component、@RestController注解时都会出现此图标,表示该类作为Bean组件同时也会注册到Spring的容器中。
注意,即使不使用如上注解,当通过其他方式如@Bean注解或xml文件配置的方式将类注入到Spring容器中,也会出现这个图标
当使用@Configuration注解声明该类是一个配置类后,也会出现该图标。我们看到在类上使用了@SpringBootApplication注解后也会出现该图标,如下:
那是因为@SpringBootApplication注解中用到了@SpringBootConfiguration注解
而@SpringBoootConfiguration注解中用到了@Configuration注解,所以也会出现该图标
我们可以看到这个图标其实和上面使用了@Component注解的图标类似,因为在类上使用了该注解后,该类也会被声明成为Bean组件。
这两个图标是一对,前者表示在配置类中声明了Bean,往容器中装入了组件,用在方法上,一般使用了@Bean注解就会出现该图标。
可以点击该图标跳转到注入了该组件的位置,也就是第二个图标
一般而言使用了@Autowired和@Resource注解就会出现该图标。
但需要注意,如果注入的组件从来没有被使用过,那么点击没有任何效果,只会给出提示
其实这些图标的含义都可以从IDEA的配置中看到: