一、parent解决依赖版本冲突

        
        在SpringBoot项目中pom文件中可以看到,上图中<dependency>的"gav"没有<version>,这是为什么呢?
                开发SpringBoot程序要继承spring-boot-starter-parent,spring-boot-starter-parent又继承了spring-boot-dependencies,spring-boot-dependencies中定义了若干个无冲突依赖版本属性依赖管理<dependencyManagement>,继承时对于依赖管理中的依赖的版本信息由父亲统一提供,这样就解决了依赖版本冲突。继承parent的形式也可以采用引入(import)依赖的形式实现,例如用阿里云创建SpringBoot项目。
【注意】在spring-boot-dependencies中没有定义的依赖,在pom中仍要自己写上<version>。

二、starter减少依赖配置

        starter就是一个包含了若干个依赖坐标定义的pom管理文件,即一个starter里面包含了若干个依赖的信息,减少了依赖配置。因此,在开发SpringBoot程序需要导坐标时通常导入对应的starter
        

三、引导类

        
        SpringBoot引导类是项目的执行入口,运行main()方法就可以启动项目。SpringBoot项目启动后初始化Spring容器,扫描引导类所在包下的Bean并加载。

四、内嵌Tomcat服务器

1.如何做到内嵌Tomcat?

        

2.如何更换起步依赖?

        使用<exclusion>排除起步依赖,再添加需要的依赖即可。如将Tomcat换成Jetty服务器。