欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringBoot重点知识及深度理解

程序员文章站 2022-03-19 16:13:33
这篇文章主要介绍SpringBoot的两个主要特征:1.起步依赖在以前学习ssm时,我们的pom文件会导入很多依赖iar包,很麻烦 而且jar包之间出现冲突很麻烦, 但SpringBoot中 如果想做web开发, 可以在pom文件中直接引入Spring-boot-starter 依赖 , 如图:它会自动把与web所有的jar包 依赖全部引入进来 比如spring 、springMVC 都会注入进来.而依赖的各个jar包的版本是在SpringBoot的版本来统一控制的如图:tomca...

这篇文章主要介绍SpringBoot的两个主要特征:

1.起步依赖
在以前学习ssm时,我们的pom文件会导入很多依赖iar包,很麻烦 而且jar包之间出现冲突很麻烦, 但SpringBoot中 如果想做web开发, 可以在pom文件中直接引入Spring-boot-starter 依赖 , 如图:
SpringBoot重点知识及深度理解
它会自动把与web所有的jar包 依赖全部引入进来 比如spring 、springMVC 都会注入进来.而依赖的各个jar包的版本是在SpringBoot的版本来统一控制的
如图:
SpringBoot重点知识及深度理解

tomcat也引进来了,如图:
SpringBoot重点知识及深度理解

只不过是内置的tomcat,是以jar包的形式引入进来的.这就是所谓的起步依赖.(原理是MAVEN的依赖传递).

2.自动装配
(1).springboot工程在启动时会加载 spring.factories 文件,配了100多个自动装配类 如图:
SpringBoot重点知识及深度理解
SpringBoot重点知识及深度理解
这么多的自动装配类不是全部生效 取决于类上和方法上的条件注解.
比如:redis的自动装配类 如图所示 SpringBoot重点知识及深度理解
redis的自动装配类是否使用取决于redis这个类上面的注解是否生效,生效了 bean才会创建 而注解是否生效 取决于你的pom文件中是否导入相关的依赖,
如图:
SpringBoot重点知识及深度理解
最后在稍微啰嗦几句,这个文件里的这么多自动装配类是通过项目启动类上的注解SpringBootApplication加载的 通过这个注解源码我们可以发现,他的底层是是三个注解封装了三个注解:SpringBoot重点知识及深度理解
当我们点入上图里面的@EnableAutoConfiguration 这个注解 我们可以发现有个@Import注解 里面有个选择器 其实该选择器是实现了spring的选择器,

SpringBoot重点知识及深度理解

SpringBoot重点知识及深度理解

实现这个选择器的作用是当项目一启动,它会自动加载下面如图的方法:

SpringBoot重点知识及深度理解

进来这个方法我们可以发现它来加载之前提到的多个自动装配类,也可能会加载来自第三方的类.封装到一个list集合中.紧接着Sping会针对这些自动装配类是否生效,生效了会加载相应的Bean 不生效会相应到项目的控制台上.

SpringBoot重点知识及深度理解
关于SpringBoot想强调的大概就这么多,是很重要的知识点,制作不易,希望你们能好好理解哦.

本文地址:https://blog.csdn.net/qiqi_tpq/article/details/111036749