<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
从pom.xml中,我们点击spring-boot-starter-web,发现其中它把web中常用的webmvc、web、tomcat等依赖坐标进行了“打包”,来实现依赖传递的作用。这样一来,我们不需要一次导入webmvc、web、tomcat等依赖,而是直接导入spring-boot-starter-web就可以进行web开发。
- starter
- SpringBoot中常见的项目名称,定义了当前项目使用的所有依赖坐标,以达到减少依赖配置的目的
- 也就是说之前要写七八个依赖,现在这七八个依赖都写入到starter中,只需要引入starter这个依赖就可以。
- parent
- 所有SpringBoot项目要继承的项目,定义了若干个坐标版本号(依赖管理,而非依赖),已达到减少依赖冲突的目的。(parent只是规定了如果要用它该用什么版本,而到底用不用是我们手工导入的starter决定的)。
- spring-boot-starter-parent各个版本之间的坐标版本不同
- 实际开发
- 使用任意坐标时,仅书写GAV(groupId, artifactId, version)中的G和A,V由SpringBoot提供,除非SpringBoot未提供对应版本V
- 如发生坐标错误,再指定Version(要小心版本冲突)
小结:
- 开发SpringBoot程序需要导入坐标时通常导入对应的starter
- 每个不同的starter根据功能不同,通常包含多个依赖坐标
- 使用starter可以实现快速配置的效果,达到简化配置的目的