分享

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

 liang1234_ 2020-02-13

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)常用插件管理。


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

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多