Spring boot 快速开发底层原理
SpringBoot快速开发底层原理解释。
SpringBoot核心理念
能够实现帮助开发者快速的整合第三方框架(Spring、Mybatis、hibernate)
原理:Maven依赖封装整合和自定义starter.
完全去除XML配置,采用注解形式
原理:SpringBoot其实根据 Spring 体系原生的注解实现包装
不需要外部容器,内嵌入服务器(Tomcat) .
原理:Java语言创建tomcat服务器,让后将本地class文件交给tomcat加载。
案例:注解方式启动MVC将SpringMVC交给内部tomcat运行
一、依赖管理
我们都知道在创建完springboot项目之后pom都得继承一下springboot的parent,那我们就点进去看看这个parent里都有些啥
二:Spring boot 加载
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
看似和普通的程序没有什么区别,其实他最主要的步骤都通过注解 @SpringBootApplication 和方法 SpringApplication.run() 完成了。
其实所有的依赖在这一步就可以完成注入,主要的步骤是 ==spring 读取所有依赖中 META-INF/spring.factories 文件,该文件指明了哪些依赖可以被自动加载,然后根据 ImportSelector 类选择加载哪些依赖,使用 ConditionOn 系列注解排除掉不需要的配置文件,最后将剩余的配置文件所代表的 bean 加载到 IoC 容器中==。