# 18\. 使用@SpringBootApplication注解
許多Spring Boot開發人員總是使用@Configuration,@EnableAutoConfiguration和@ComponentScan來標注它們的主類。 由于這些注解經常一起使用(特別是如果您遵循之前說的[最佳實踐](http://docs.spring.io/spring-boot/docs/1.5.2.RELEASE/reference/htmlsingle/#using-boot-structuring-your-code)),Spring Boot提供了一個方便的@SpringBootApplication注解作為這三個的替代方法。
@SpringBootApplication注解相當于使用@Configuration,@EnableAutoConfiguration和@ComponentScan和他們的默認屬性:
```
package com.example.myproject;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication // same as @Configuration @EnableAutoConfiguration @ComponentScan
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
```
> @SpringBootApplication還提供了別名來定制@EnableAutoConfiguration和@ComponentScan的屬性。
- Part I. Spring Boot 文檔
- Part II. 入門指南
- 8. Spring Boot 介紹
- 9. 系統要求
- 10. 安裝 Spring Boot
- 11. 開發您的第一個Spring Boot應用程序
- 12. 接下來應該讀什么
- Part III. 使用 Spring Boot
- 13. 構建系統
- 14. 構建代碼
- 15. 配置類
- 16. 自動配置
- 17. Spring Beans 和 依賴注入
- 18. 使用@SpringBootApplication注解
- 19. 運行你的應用程序
- 20. 開發工具
- 21. 包裝您的應用程序到生產環境
- 22. 接下來應該讀什么
- Part IV. Spring Boot 功能
- 23. SpringApplication
- 24. 外部配置
- 25. 配置文件(Profiles)
- 26. 日志
- 27. 開發Web應用程序
- 28. Security
- 29. 使用SQL數據庫