一、一些名词解释
- 微服务架构:打破all in one 的架构方式,把每个功能都独立出来进行动态组合,后续维护只需要对对应功能的代码进行修改,不用对整个系统进行维护
- Restful:一种架构风格,主要就是对HTTP请求的各种状态与回复标准化
二、SpringBoot核心原理
- 核心原理:自动装配
- pom.xml:定义装配的文件
- 启动器:SpringBoot的启动场景
如下图所示
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
这样就会自动与web环境所有的依赖,也就是各种包
- 主程序 SpringApplication
注解解释:
1、@SpringBootApplication
作用:标注在某个类上说明这个类是SpringBoot的主配置类 , SpringBoot就应该运行这个类的main方法来启动SpringBoot应用;
2、@SpringBootConfiguration
作用:SpringBoot的配置类 ,标注在某个类上 , 表示这是一个SpringBoot的配置类;
3、@EnableAutoConfiguration
作用:开启自动配置功能
核心任务:
1、推断应用的类型是普通的项目还是Web项目
2、查找并加载所有可用初始化器 , 设置到initializers属性中
3、找出所有的应用程序监听器,设置到listeners属性中
4、推断并设置main方法的定义类,找到运行的主类
run方法流程
- 结论:SpringBoot所有自动配置都是在启动的时候扫描并加载的,但它们也并不是全都生效,只有导入对应的start(启动器),自动装配才会生效。