依赖管理特性
1. 父项目做依赖管理:
点击到该父项目中(Ctrl + 鼠标左键)
我们发现其父项目中还有一个父项目, 继续点进去
这个时候就点到头了, 最顶层的父项目是spring-boot-dependencies-*.pom —> 我们可以看到这个父项目中使用一个< properties>标签维护了很多很多的依赖的版本号 —> 其实这就是为什么我们添加依赖的时候可以不用写版本号的原因, 这就是版本仲裁机制
依赖管理
父项目
<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>
几乎声明了所有开发中常用的依赖的版本号,自动版本仲裁机制
是可以修改依赖版本的
1、查看spring-boot-dependencies里面规定当前依赖的版本 用的key --> 也就是用的标签
2、在当前项目里面重写配置
<properties>
<mysql.version>5.1.43</mysql.version>
</properties>
我们可以看到 :我们只需要在当前项目的pom.xml文件中也使用< properties>标签来完成一个版本号申明, 就可以覆盖父项目中的版本号申明了
2.开发导入starter场景启动器
所有场景启动器最基本的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.3.4.RELEASE</version>
<scope>compile</scope>
</dependency>
1、见到很多 spring-boot-starter-* : *就某种场景
2、只要引入starter,这个场景的所有常规需要的依赖我们都自动引入
3、SpringBoot所有支持的场景 —> 我们去官网上可以查看到
4、见到的 *-spring-boot-starter: 第三方为我们提供的简化开发的场景启动器。
- 其实是有很多第三方场景启动器的, 我们也可以自定义场景启动器
说白了starter(场景启动器)其实也就是底层是很多依赖
1、引入依赖默认都可以不写版本
2、引入非版本仲裁的jar,要写版本号。