SpringBoot学习笔记(四)——SpringBoot中的自动配置
作者:互联网
总结:我们之前讲了SpringBoot对bean的配置,但是我们之前在学习SSM框架时,还需要在配置文件中配置很多其它的类及功能。例如SpringMVC中的DispatchServlet来拦截所有请求这种在springboot中就没有要求我们手动配置。而我们的springmvc项目依然可以接收请求的原因就在于上面提到的@EnableAutoConfiguration注解,它能够做到自动配置。
Spring Boot⾃动配置会根据项⽬中所添加的依赖进⾏⾃动配置,⽐如我们项⽬中添加了<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
而这个依赖中间接添加了
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>3.0.0-M1</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <version>3.0.0-M1</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>6.0.0-M2</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>6.0.0-M2</version> <scope>compile</scope> </dependency>
我们知道,我们在搭建Spring MVC⼯程时,除开要假如spring-web,spring-webmvc等依赖包之外,最复杂的就是还要进⾏很多额外的配置。那在Spring Boot中,这些配置在哪呢? 注意,在我们项⽬中引⼊的spring-boot-starter-web中,引⼊了spring-boot-starter,⽽这个⾥⾯⼜引⼊了spring-boot-autoconfigure,在spring-boot-autoconfigure依赖中存在⼀个⽂件spring.factories,这个⽂件中记录了各种各样的*****AutoConfiguration类,这些⾃动配置类(其实就是配置类)就是⽤来进⾏⾃动配置的。
那这个spring.factories⽂件中所记录的⾃动配置类,是什么时候⽣效的呢,这就是@EnableAutoConfiguration注解的作⽤,只有加了这个注解,那这些⾃动配置类才会⽣效,因为@EnableAutoConfiguration注解会去寻找spring.factories⽂件,并解析内容,所以能解析出来⾃动配置类,并进⼀步对配置类进⾏解析。 ⽐如在spring.factories⽂件中存在⼀个DispatcherServletAutoConfiguration,很明显是⽤来对DispatcherServlet进⾏⾃动配置的,具体的细节,我们暂时就不深⼊了,本节课只需⼤体理解⾃动配置 的作⽤。 ⾃动配置并不是去帮助我们配置扫描路径之类的,⽽是针对各种各样的场景,Spring Boot已经给我们配置好了本来是我们需要配置的⼀些Bean以及⼀些参数。
标签:SpringBoot,spring,配置,boot,笔记,自动,springframework,org,starter 来源: https://www.cnblogs.com/worthmove/p/16690899.html