spring-boot-dependencies

阅读数:106 评论数:0

跳转到新版页面

分类

python/Java

正文

一、概述

它的主要作用是声明常用的各模块的版本号,供子项目去引用,起到版本约束的作用。

1、springboot项目

springboot项目在pom文件中引入依赖常用两种方式:spring-boot-starter-parent和spring-boot-dependencies。

2、springcloud项目

spring-cloud-dependencies和spring-cloud-alibaba-dependencies则是去声明cloud和cloud-alibaba组件的版本。

二、spring-boot-starter-parent

 <parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.1.3.RELEASE</version>
   <relativePath/> <!-- lookup parent from repository -->
</parent>

如果导入其它starter,可以省略版本号。

1、功能

(1)默认java 1.6编译

(2)UTF-8编码格式

(3)依赖管理部分,可以让你对公共依赖省略version标签,其继承自spring-boot-dependencies pom。

(4)对application.properties和application.yml等做了资源过滤。

(5)插件配置

(6)因为默认配置文件接受spring风格的占位符${},所以maven过滤器换成了@..@占位符(可通过maven属性resource.delimiter替换)。

2、配置

可以通过property覆盖内部的依赖,例如:

<properties>
    <spring-data-releasetrain.version>Fowler-SR2</spring-data-releasetrain.version>
</properties>

三、spring-boot-dependencies

如果你比较喜欢明确的声明所有的maven配置,可以使用spring-boot-dependencies。

<dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>2.1.3.RELEASE</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
</dependencyManagement>

这种方式不能使用property的形式覆盖依赖项,要达到相同的效果,需要在dependencyManagement里面的spring-boot-dependencies之前添加依赖的东西,例如:

注意:亲试后,下面这种覆盖方式并不起作用,

<dependencyManagement>
    <dependencies>
        <!-- Override Spring Data release train provided by Spring Boot -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-releasetrain</artifactId>
            <version>Fowler-SR2</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>2.1.3.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>



相关推荐

一、request uri部分 @PathVariable 获取路径参数,形如url/{id} 二、request header部分 @RequestHeade

一、概述 springboot中有两种方式使用kafka时,直接使用kafka-client连接kafka服务;另一种是使用spring-kafka框架来连接kafka。 1、版本兼容 使用时要注意版

当然可以自己写redis的工具类,或者使用第三方开源jar包或代码,这里使用spring boot的集成类。 一、pom依赖 <dependency> <gro

websocket协议基于tcp的网络协议,它实现浏览器与器全双工通信。 spring boot2 +websocket 1、添加依赖 <pre clas

一、概述 druid是阿里开源的数据库连接池。 二、springboot集成druid 1、方式一 <dependency> <groupId>com.alibaba</grou

一、概述 一个项目使用多个数据库(无论是主从复制--读写分离还是分布式数据库结构)的重要性变得越来越明显,整合的多数据源有两种方式:分包和aop。 1、SqlSessionTemplate SqlSe

一、概述 PageHelper是开源免费的mybatis第三方分页插件。 二、使用 1、pom引入 <dependency> <groupId>com.github.pageh

一、日志框架的介绍 Spring Boot 2.*默认采用slf4j+logback的形式,slf4j是个通用的日志门面,logback就是个具体的日志框架了。

背景: 之前用spring boot+mybatis+oracle,现在要改成spring boot_mybatis+postgresql。 为了想让一套代码即可

共同点 都是用来表示Spring某个类是否可以接收HTTP请求。 不同点 @Controller标识一个spring类是Spring MVC c