SpringBoot起步依赖原理分析

返回上一级目录   

本页源码参考:源码免费下载 免费在线查看

①分析spring-boot-starter

②分析spring-boot-starter-web


①分析spring-boot-starter

  • 按住Ctrl点击pom.xml中的spring-boot-starter,
  • 再按住Ctrl点击pom.xml中parent的spring-boot-starters 
  • 再按住Ctrl点击pom.xml中parent的spring-boot-parent

xml配置如下(只摘抄了部分重点配置):


    org.springframework.boot
    spring-boot-parent
    2.0.4.RELEASE
    ../spring-boot-parent

按住Ctrl点击pom.xml中的spring-boot-starter-dependencies,跳转到了spring-boot-starter-dependencies的pom.xml,xml配置如下(只摘抄了部分配置):


        5.15.4
        2.7.7
        1.9.64
        2.4.0
        1.8.13
        3.9.1
        4.0.6
        2.1.4
        3.0.0
        1.7.11
        2.6.2
        3.4.0
        1.3.4
        1.11
        2.2.0
        3.7


从上面的spring-boot-starter-dependencies的pom.xml中我们可以发现,一部分坐标的版本、依赖管理、插件管
理已经定义好,所以我们的SpringBoot工程继承spring-boot-starter-parent后已经具备版本锁定等配置了。所以
起步依赖的作用就是进行依赖的传递。

②分析spring-boot-starter-web

按住Ctrl点击pom.xml中的spring-boot-starter-web,跳转到了spring-boot-starter-web的pom.xml,xml配置如
下(只摘抄了部分配置):
 


    
      org.springframework.boot
      spring-boot-starter
      2.0.4.RELEASE
      compile
    
    
      org.springframework.boot
      spring-boot-starter-json
      2.0.4.RELEASE
      compile
    
    
      org.springframework.boot
      spring-boot-starter-tomcat
      2.0.4.RELEASE
      compile
    
    
      org.hibernate.validator
      hibernate-validator
      6.0.11.Final
      compile
    
    
      org.springframework
      spring-web
      5.0.8.RELEASE
      compile
    
    
      org.springframework
      spring-webmvc
      5.0.8.RELEASE
      compile
    
  

从上面的spring-boot-starter-web的pom.xml中我们可以发现,spring-boot-starter-web就是将web开发要使用的
spring-web、spring-webmvc等坐标进行了“打包”,这样我们的工程只要引入spring-boot-starter-web起步依赖的
坐标就可以进行web开发了,同样体现了依赖传递的作用。
 

你可能感兴趣的:(Spring,Boot)