标签:SpringBoot spring 配置 boot 笔记 自动 springframework org starter
总结:我们之前讲了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
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。