Spring IO platform 教程

/ Java / 没有评论 / 1447浏览

Spring IO platform 教程

这篇文章说教程其实是不太合适的,因为 Spring IO platform 非常的简单,只需要 maven 的一个简单的 pom 配置即可。

Spring IO Platform 简介

Spring 起初只专注 iocaop,现在已发展成一个庞大体系。比如 securitymvc 等。如此一来,不同模块或者与外部进行集成时,依赖处理就需要各自对应版本号。比如,较新 Spring 与较老的 quartz,它们集成就会遇到问题,给搭建和升级带来不便。因此Spring IO Platform应运而生,只要项目中引入了它,外部集成时依赖关系无需版本号。

Spring IO Platform 的特性

  1. 一个平台,多个工作负载-web构建、集成、批处理、响应式或大数据应用。
  2. 极致简化springBoot的开发经验。
  3. 提供开箱即用的生产特性。
  4. 模块化平台、允许开发者只部署他们需要的部分。
  5. 支持嵌入式运行时,传统应用服务器和Paas部署。
  6. 仅仅依赖JavaSe,支持Groovy、Grails和一部分JavaEE。
  7. 可以结合现有的依赖系统支持(Maven和Gradle)。
  8. 支持JDK7和8*。

Spring IO platform 的使用

在项目中 maven 的配置文件中配置 Spring IO platform 。代码如下:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.spring.platform</groupId>
            <artifactId>platform-bom</artifactId>
            <version>Brussels-SR1</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

配置完成后,我们在做其他 Spring 相关配置时,无需添加版本号。例如以下下配置:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
</dependency>

Spring IO Platform只是一个 pom 文件,记录了Spring 与其他开源项目对应的版本。省去了版本号,也就省去了处理依赖时的问题,因为Spring IO Platform中有最优的版本配置。

Spring IO platform 相关的 BOM

当然SpringSource为了解决这些Jar冲突,推出了各种BOM,当然最著名的就是spring platform io bom,其中最核心的三个是:spring-framework-bomspring-boot-dependenciesplatform-bom

对于使用了 Maven 依赖的工程来说,直接在 pom.xml 文件中添加如下配置代码,即可免去管理版本冲突的难题。

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>4.2.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.3.0.M2</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>io.spring.platform</groupId>
            <artifactId>platform-bom</artifactId>
            <version>1.1.3.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Spring IO Platform 中维护的依赖

Spring IO Platform 中维护了很多依赖,具体对应的依赖版本,大家可以到这里http://docs.spring.io/platform/docs/current/reference/htmlsingle/#appendix-dependency-versions查看。