SpringBoot專欄(五) -- SpringBoot的啟動方式(@SpringBootApplication注解、@EnableAutoConfiguration注解、@ComponentScan注解)


解決問題:

什么是掃包?

SpringBoot的入口函數?

SpringBoot包掃描的注解?

 

1. 什么是掃包?

什么是掃包?就是發現Service,Controller,Component然后自動注入到Spring容器中。

 

2. SpringBoot的入口。

SpringBoot的入口和常見的java程序一樣都是main()函數。

public static void main(String[] args) {
    SpringApplication.run(ProviderApplication.class, args);
}

 

3. 啟動方式

SpringBoot啟動,指的是SpringBoot找到項目的入口,然后把Component、Controller、Service注入到Spring容器中。

3.1 SpringBoot的啟動方式一(通過@SpringBootApplication注解、)

@SpringBootApplication
public class ProviderApplication {

    public static void main(String[] args) {
        SpringApplication.run(ProviderApplication.class, args);
    }
}

備注:

SpringBootApplication注解:負責啟動SpringBoot項目。這個注解實現了掃描包的功能,掃描范圍是該文件所在的當前目錄和同級目錄。

 

3.2 SpringBoot的啟動方式二(通過@EnableAutoConfiguration注解)

@EnableAutoConfiguration
@ComponentScan("需要掃描包的包名")
public class Application {
    public static void main(String[] args){
        SpringApplication.run(Application.class, args);
    }
}

備注:

@EnableAutoConfiguration默認的掃包范圍是當前類中。

@ComponentScan可以指定掃包范圍。

 

結論,@SpringBootApplication注解等於@EnableAutoConfiguration注解加上@ComponentScan注解

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM