# 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数据库