引言
了解Spring常用注解的使用方式可以帮助我们更快速理解这个框架和其中的深度
注解
@Configuration:表示该类是一个配置类,用于定义 Spring Bean。
@EnableAutoConfiguration:启用 Spring Boot 的自动配置功能,让 Spring Boot 根据类路径中的依赖自动配置应用。
@ComponentScan:启用组件扫描,Spring Boot 会扫描该类所在包及其子包下的组件,并将它们注册为 Spring Bean。
@SpringBootApplication :这个注解包含上面三个注解
@ImportResource:从一个基于 XML 配置的旧 Spring 项目迁移到基于 Java 注解的配置时,可能不想一下子把所有的 XML 配置都转换为 Java 注解配置,这时就可以使用 @ImportResource 逐步引入现有的 XML 配置文件。
组件
创建一个 SpringApplication 实例,然后调用 run 方法启动应用。run 方法接受一个 String[] 类型的参数,通常是 main 方法的 args 参数,用于传递命令行参数。
java">import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Application {public static void main(String[] args) {// 创建 SpringApplication 实例SpringApplication app = new SpringApplication(Application.class);// 启动应用app.run(args);}
}
以上文Spring启动类我们来分析一下Spring的组件
1. SpringApplication 类
SpringApplication 类是 Spring Boot 框架的核心启动类,它封装了启动 Spring 应用所需的一系列操作
- 自动配置:根据类路径中的依赖和应用的配置,自动配置 Spring 应用的各种组件,如数据源、消息队列等。
- 组件扫描:扫描指定包及其子包下带有特定注解(如 @Component、@Service、@Repository 等)的类,并将它们注册为 Spring Bean。
- 启动嵌入式服务器:如果应用是一个 Web 应用,SpringApplication 会自动启动嵌入式服务器(如 Tomcat、Jetty 等)。
2. Application.class 参数
Application.class 通常是 Spring Boot 应用的主类,这个类一般带有 @SpringBootApplication 注解,该注解是一个组合注解,包含了 @Configuration、@EnableAutoConfiguration 和 @ComponentScan 注解