領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多我們很高興地宣佈 Spring IO 1.0 釋出!
Spring IO 首先是對許多使用者已經瞭解並使用的一個圍繞 Spring 的單一、內聚、協調平臺的邏輯描述。
Spring IO 平臺包括基礎層模組和執行層領域特定執行時 (DSR)。基礎層代表核心 Spring 模組和相關的第三方依賴項,它們已經過協調以確保流暢的開發體驗。Spring IO 執行層提供的 DSR 極大地簡化了構建生產就緒的、基於 JVM 的工作負載。Spring IO 的第一個版本包括兩個 DSR:Spring Boot 和 Grails。Spring XD 將於 2014 年晚些時候新增到 Spring IO 平臺中。
Spring 支援許多應用程式工作負載。想要與資料儲存對話?一個大型或專業的資料儲存?構建批處理解決方案?整合不同的系統和資料?使用AMQP?使用Groovy 程式設計語言使用 Grails 快速構建 Web 應用程式?連線到 OAuth 保護的 REST 服務,例如Twitter、Facebook,或者甚至任何 OAuth 保護的服務?保護應用程式?使用 REST、websockets 等構建Web 應用程式?(使用 HATEOAS?)連線到您最喜歡的平臺即服務(例如 Cloud Foundry)上的基礎設施服務?需要管理快速、反應式、併發、訊息和事件分派?公開SOAP 驅動的 Web 服務?我還需要繼續嗎?如果您知道去哪裡找,很可能有一個解決方案適合您!
藉助Spring Boot,可以輕鬆地將這些模組(以及更多模組!)整合到一個由約定驅動的解決方案中。Spring Boot 是引導和簡化持續應用程式開發的絕佳方式。
Spring IO 平臺也是透過 Maven 物料清單依賴項對 API 進行的實際協調。現在可以輕鬆地推斷整個產品組合中哪些依賴項的哪些版本協同工作。如果您想獲得最新和最好的 API 版本,只需更新您的 Spring IO 依賴項。Spring IO 作為一個平臺,還指定了已知可用的流行第三方庫(如 Hibernate)的版本。
然而,Spring IO 最終只是您應用程式 CLASSPATH 上的庫。您可以使用構建工具的 <dependencyManagement/> 功能選擇使用特定版本的依賴項。版本管理最終只是一個建議和便利,而不是要求。
Spring IO 經認證可與 Java 1.7 和 1.8 配合使用,儘管 Spring IO 下的特定專案通常也可以與更舊的 JDK 配合使用。它只需要 Java SE,並支援 Groovy、Grails 和一些 Java EE。作為一個平臺,它可以在嵌入式執行時、經典應用程式伺服器部署和 PaaS 環境中部署。
以下是您可能如何使用 Spring IO 的一個示例。這是一個簡單的 Spring Boot REST 端點,執行時會響應 http://127.0.0.1:8080/hello/SpringIO 形式的 HTTP 請求。
hi/pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>your-application</artifactId>
<version>1.0.0-SNAPSHOT</version>
<!-- our one dependency on Spring Boot's web support. No version. -->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<!-- Transitively bring in the Spring IO Platform Bill-of-Materials `pom.xml` -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.spring.platform</groupId>
<artifactId>platform-bom</artifactId>
<version>1.0.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
</project>
hi/src/main/java/io/Application.java
package io;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Configuration
@EnableAutoConfiguration
@RestController
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@RequestMapping("/hello/{name}")
String hi(@PathVariable String name) {
return "Hello, " + name + "!";
}
}
在詳盡的 Spring IO 文件中還有更多內容需要說明和閱讀。它包括更多示例並涵蓋 Gradle。