微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

3.了解自动配置原理-依赖版本管理

在编写springboot的时候 只需要导入starter-web,关于wab的所有依赖都进来了,为什么会进来

1.父项目做依赖管理

在每个项目中的pom.xml都会存在这一个配置
依赖管理 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</version> </parent> 在他的里面又存在父依赖,点进去之后 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.3.4.RELEASE</version> </parent> 几乎声明了所有开发中常用的依赖的版本号,自动版本仲裁机制

 

 

 

 

 

继承于这里面的依赖,而版本也在这里面 所以不需要导入版本号就能直接使用

web也在这里 版本都统一好了

 

 

 2.开发导入的场景启动器

1、见到很多 spring-boot-starter-* : *就某种场景
2、只要引入starter,这个场景的所有常规需要的依赖我们都自动引入
3、SpringBoot所有支持的场景
https://docs.spring.io/spring-boot/docs/current/reference/html/using-spring-boot.html#using-boot-starter
4、见到的  *-spring-boot-starter: 第三方为我们提供的简化开发的场景启动器。
5、所有场景启动器最底层的依赖
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter</artifactId>
  <version>2.3.4.RELEASE</version>
  <scope>compile</scope>
</dependency>
spring-boot-starter这个依赖里都是springboot的核心依赖,当导入某种场景的时候都会包含这个核心场景

 

 3.修改版本号

最好是别修改了,版本不一样会引起依赖冲突

直接去dependencies里面找版本号,比如<MysqL.version>8.0.21</MysqL.version>
1、查看spring-boot-dependencies里面规定当前依赖的版本 用的 key。 2、在当前项目里面重写配置,就近加载 <properties> <MysqL.version>5.1.43</MysqL.version> </properties>

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐