SpringBoot在Maven环境下如何使用自己项目的parent?

Spring boot 简介

   Spring boot 从名称上就可以看出,它是spring生态圈中的一个子项目,基于Spring4进一步进行封装的一个框架,所以不熟悉Spring的同学还是得先去学习一下Spring。其次,Spring boot帮我们集成很多常用的功能,使得整个配置更加简单,完全采用“约定大于配置“的原则,全面消除xml配置文件的使用方式。用过Spring的同学应该知道,虽然Spring一直在努力的减少配置的复杂性,但是,配置Web环境的项目还是挺麻烦的,比如需要配置日志、数据库、事务、缓存等,视图选择器,然后再配置servlet,最后将程序发布到tomcat目录下。而Spring boot则帮我们大大简化了这个过程,它提供了很多starter,只要引入对应的jar包就可以了。下图中是SpringBoot官网提供的常用的starter构件。

实际中,还有很多第三方框架为了迎合SpringBoot自己开发了很多starter,这里没哟一一列出,比如Mybatis就自己提供了一个starter供大家在SpringBoot环境下使用Mybatis框架。

官网给出的示例和学习文档,都是以Maven环境为示例,上来都要求我们的pom文件继承SpringBoot的parent。spring-boot-starter-parent的作用::

  1)jar包的版本管理。

  2)配置文件的过滤。

  3)常用插件管理。


   
<parent> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-starter-parent</artifactId> 
       <version>1.5.8.RELEASE</version> 
   </parent> 
  然后我们就可以依赖SpringBoot提供的各种starter,这种方式对于小型项目或者以学习为目的使用还可以。但是对于很对大型项目,我们一般都自定义自己项目的parent工程。Maven不允许有多个parent标签,这种情况我们需要采用下面一种方式。不使用parent标签,使用maven的dependencyManagement标签,来统一对依赖进行管理。代码如下:
<dependencyManagement> 
     <dependencies> 
        <dependency> 
            <groupId>org.springframework.boot</groupId> 
            <artifactId>spring-boot-dependencies</artifactId> 
            <version>1.5.9.RELEASE</version> 
            <type>pom</type> 
            <scope>import</scope> 
        </dependency> 
    </dependencies> 
</dependencyManagement> 

通过这种方式我们依赖的各个starter就不会依赖报错,然后我们可以使用parent标签继承我们自己的parent工程。







展开阅读全文

没有更多推荐了,返回首页