當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring Boot笔记-@ComponentScan初步解析
生活随笔
收集整理的這篇文章主要介紹了
Spring Boot笔记-@ComponentScan初步解析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
@ComponentScan默認是掃描當前包下的所有類(包括子包)
如下:
@SpringBootConfiguration @EnableAutoConfiguration @ComponentScan public class DemoApplication {public static void main(String[] args) {ConfigurableApplicationContext ctx = SpringApplication.run(DemoApplication.class, args);String[] beanDefinitionNames = ctx.getBeanDefinitionNames();for(String name : beanDefinitionNames){System.out.println(name);}}}這里有2個bean
打印如下:
將
將
@Component public class MyComponent { }改為:
public class MyComponent { }就不會被自動裝配。
?
下面將component包放到外面后如下圖:
就裝配不了了。
但可以在@ComponentScan添加參數
如下代碼:
@SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(basePackages = "cn.it1995") public class DemoApplication {public static void main(String[] args) {ConfigurableApplicationContext ctx = SpringApplication.run(DemoApplication.class, args);String[] beanDefinitionNames = ctx.getBeanDefinitionNames();for(String name : beanDefinitionNames){System.out.println(name);}}}就可以了!
或者用這種方式
@SpringBootConfiguration @EnableAutoConfiguration @ComponentScan @ComponentScan(basePackages = "cn.it1995.component") public class DemoApplication {public static void main(String[] args) {ConfigurableApplicationContext ctx = SpringApplication.run(DemoApplication.class, args);String[] beanDefinitionNames = ctx.getBeanDefinitionNames();for(String name : beanDefinitionNames){System.out.println(name);}}}?
?
?
總結
以上是生活随笔為你收集整理的Spring Boot笔记-@ComponentScan初步解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java笔记-JDK搭建WebServi
- 下一篇: gradle idea java ssm