- pom.xml文件:
每个springboot项目都添加了如下依赖:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath>../../spring-boot-dependencies</relativePath>
</parent>
这个spring-boot-dependencies是所有的依赖库,以后的导入依赖不需要写版本,因为都在这个依赖中定义好了。
2. 启动器
springboot-boot-starter-xxx:就是spring-boot的场景启动器
比如:springboot-boot-starter-web帮我们导入了web场景的所有组件
需要什么场景就加什么场景的starter,依赖已经包括进去了。
3. 主启动类
//@SpringBootApplication 来标注一个主程序类
//说明这是一个Spring Boot应用
@SpringBootApplication
public class SpringbootApplication {
public static void main(String[] args) {
//以为是启动了一个方法,没想到启动了一个服务
SpringApplication.run(SpringbootApplication.class, args);
}
}
分析:
- @SpringBootApplication:此类是主配置类,运行此类的main方法启动Springboot应用
- @ComponentScan:自动扫描并加载符合条件的组件或者bean , 将这个bean定义加载到IOC容器中
- @SpringBootConfiguration:SpringBoot的配置类
- @EnableAutoConfiguration:自动配置,在启动时从spring.factories中获取EnableAutoConfiguration指定的值,将这些值作为自动配置类导入容器 , 自动配置类就生效 , 帮我们进行自动配置工作