Spring 3.1 M1: 引入 FeatureSpecification 支援

工程 | Chris Beams | 2011年2月17日 | ...

更新:本文件中描述的 FeatureSpecification 功能已在 Spring Framework 3.1 M2 中移除,轉而支援 @Enable* 註解。更多資訊請參閱 3.1 M2 公告

介紹

在本系列 先前幾篇 博文 中,我簡要介紹了新的 @Profile 註解如何與 @Configuration 類結合使用,以利用 Spring 的 Bean 定義配置檔案。今天,我們將探討 Spring 3.1 中程式碼配置方面的全新功能:FeatureSpecification及其相關支援。

我準備了一個示例專案來配合本文。請訪問 https://github.com/cbeams/spring-3.1-featurespec,並遵循 README 中的說明…

本週 Spring:2011 年 2 月 15 日

工程 | Josh Long | 2011 年 2 月 16 日 | ...

上週我們見證了創紀錄的數量……好吧,不說別的,就是創紀錄!首先,Spring 專案負責人兼萬事通 Juergen Hoeller 舉辦了一場網路研討會,介紹了 Spring 3.1 的新功能,參加人數創下紀錄。接著,彷彿這還不夠,第二天,Spring 3.1 的第一個里程碑版本釋出,下載量也創下紀錄。這已經夠了。我不知道你怎麼想,但我本可以就此打住。然後,在過去的一週裡,我猜其他 Spring 專案的新版本釋出數量也創下了紀錄!最後,昨天,毫無疑問是為了應對所有這些紀錄級別的活動,SpringSource 部落格的訪問量達到了前所未有的紀錄!總而言之,Spring 3.1 里程碑的狂熱,眾多新專案,以及一如既往的健康社群支援(幹得漂亮,團隊!)。

 </p> 
      <li>Hot on the heels of Juergen's Spring 3.1 webinar, Chris Beams got the ball rolling on the  first three   of many  posts on the numerous new features in Spring 3.1. 
    	
    	<a href="http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1-released/">
    

    第一篇文章總體上介紹了 Spring 3.1 M1。第二篇文章 介紹了 Spring 3.1 的“Profiles”功能,該功能允許您使用Environments 按環境劃分您的 Beans。第三篇文章介紹了Environment 抽象的統一屬性管理功能。

    	  </li>
    
    
    <li>
    	Matt Raible has put…

GORM for MongoDB:新里程碑,更豐富的體驗

工程 | Graeme Rocher | 2011年2月15日 | ...

去年我們在 GORM 中引入了對 MongoDB 的支援(以及許多其他GORM實現),並受到了社群的極大歡迎。我們收到了大量的反饋,今天我們很高興地宣佈釋出一個新版本(里程碑 2),該版本解決了我們收到的一些反饋。

嵌入式文件支援

排名第一的請求功能是巢狀文件支援,在此版本中我們對此進行了顯著改進。現在您可以使用 GORM 中的標準嵌入式對映來嵌入其他域

class Person {
  String firstName
  String lastName
  Address address…

Spring 3.1 M1:統一屬性管理

工程 | Chris Beams | 2011年2月15日 | ...

在本系列 前兩篇 博文 中,我介紹了 Bean 定義配置檔案功能,以及它如何與 Spring 3.1 M1 中新增的Environment 抽象相關聯。今天我們將探討 Environment 的第二個方面——它如何簡化配置屬性管理的問題。

理解屬性源

Spring 的 Environment 抽象在可配置的屬性源層級結構上提供了搜尋操作。為了充分解釋,請考慮以下內容


ApplicationContext ctx = new GenericApplicationContext();
Environment env = ctx.getEnvironment();
boolean containsFoo = env.containsProperty…

Spring 3.1 M1: 引入 @Profile

工程 | Chris Beams | 2011 年 2 月 14 日 | ...

介紹

在我 之前關於 Spring 3.1 M1 的釋出公告的帖子 中,我討論了在使用 Spring <beans/> XML 配置容器時應用的新*bean 定義 profiles* 功能。今天我們將介紹新的 @Profile 註解,並瞭解如何在不使用 XML 而使用 @Configuration 類時應用此相同功能。在此過程中,我們將涵蓋一些設計 @Configuration 類的最佳實踐。

回顧 @Configuration

對於不熟悉 @Configuration 類的使用者,您可以將它們視為 Spring <beans/> XML 檔案的純 Java 等價物。我們之前已經 博文 討論 這個功能集,並且參考文件 對此進行了很好的介紹。如果您需要了解…,可能需要回顧一下這些資源。

Spring Framework 3.1 M1 已釋出

工程 | Chris Beams | 2011年2月11日 | ...

Spring 3.1 的第一個里程碑版本剛剛釋出[1],本文將啟動一系列帖子,我將和其他團隊成員一起介紹每個主要功能。即使在第一個里程碑版本中,也有很多內容值得討論!

  • Bean 定義配置檔案
  • 透過 Spring 新的 Environment 抽象統一屬性管理
  • 增強基於 Java 的配置,使用 @Feature 方法
  • 擴充套件的 MVC 名稱空間支援和基於 Java 的配置等效項
  • RestTemplate API 的流式支援和新的攔截模型
  • 全面的快取支援
  • 新的 c: XML 名稱空間,用於簡潔地配置建構函式注入

今天我將介紹第一項——我們稱之為*bean 定義 profiles* 的新功能。我們最常收到的請求之一是提供一個核心容器機制,允許在不同環境中註冊不同的 bean。“環境”一詞對不同的使用者可能意味著不同的東西,但一個典型的場景可能是僅在將應用程式部署到效能環境時註冊監控基礎結構,或者為客戶 A 與客戶 B 的部署註冊自定義 bean 實現。也許最常見的情況是在開發中針對獨立資料來源,而在 QA 或生產環境中從 JNDI 中查詢相同的資料來源。Bean 定義 profiles 代表了一種通用方法來滿足此類用例,我們將在下面的示例中探討後者用例。

透過示例動手實踐

我開發了一個小型示例來配合本文,您現在可以花點時間看看它(如果不行也沒關係;您不需要程式碼也能閱讀下面的內容)。只需遵循 https://github.com/cbeams/spring-3.1-profiles-xml 上的 README 中的說明即可。如果您不熟悉 Git,README 中有說明…

開始使用 Spring Data JPA

工程 | Oliver Drotbohm | 2011年2月10日 | ...

隨著 Spring Data JPA 專案的第一個里程碑版本的釋出,我想快速介紹一下它的功能。您可能知道,Spring 框架提供了對構建基於 JPA 的資料訪問層支援。那麼 Spring Data JPA 在此基礎上增加了什麼呢?為了回答這個問題,我想從使用純 JPA + Spring 實現的示例域的資料訪問元件開始,並指出有待改進的方面。完成這些之後,我將重構實現以使用 Spring Data JPA 的功能來解決這些問題…

Spring Android and Maven (Part 2)

工程 | Roy Clarkson | 2011年2月9日 | ...

《Spring Android and Maven (Part 1)》中,我介紹瞭如何使用Maven從命令列構建Android應用程式。在這篇文章中,我將向您展示如何從Eclipse IDE使用Maven依賴管理來構建Android應用程式。該應用程式還將展示本週釋出的Spring Android 1.0.0.M2中的最新功能。

概述

Maven Android Plugin 允許您使用 Maven 構建 Android 應用程式並受益於依賴管理。Google 的 Android Development Tools (ADT) 外掛允許您在 Eclipse IDE 中開發和構建 Android 應用程式。要在 Eclipse 中獲得 Maven 依賴管理,需要安裝 Maven Integration for Android Development Tools 外掛,該外掛集成了 m2eclipse、ADT 外掛以及 Maven Android Plugin

本週 Spring 動態:2011 年 2 月 8 日

工程 | Josh Long | 2011 年 2 月 8 日 | ...

Spring 社群本週依然精彩紛呈。新版 Tomcat 釋出、移動客戶端、Spring Data 以及大資料(如 Spring Gemfire、Redis,以及當然的 Spring Data 專案)似乎引起了社群的廣泛關注。

溫馨提示:Spring 核心框架的領導者兼所有姐妹 Spring 專案的貢獻者 Juergen Hoeller 將在兩天後(2 月 10 日)舉行兩次相同的網路研討會——一次面向北美一次面向歐洲——介紹 Spring 3.1 的新特性!務必註冊參加這次免費的網路研討會,瞭解最廣泛使用的 Java 框架的下一代迭代!

這似乎是一個創紀錄的活動,預先註冊人數眾多。儘管還沒有(任何)Spring 3.1 二進位制檔案(請持續關注!),但 Spring 專案的 程式碼始終可用,因此——如果您和我一樣對所有新功能感到興奮——您將在釋出很久之前就能看到這次網路研討會並開始玩轉它了…

本週 Spring 動態:2011 年 2 月 1 日

工程 | Josh Long | 2011 年 2 月 2 日 | ...

本週社群的進展如火如荼,令人著迷。根據您的關注點不同,興奮點可能在於 Spring Data、Gemfire 和 Virgo 等更前沿的新技術,也可能在於 Tomcat 和 SpringSource Tool Suite 等技術的精妙改進。無論如何,本週有很多內容值得了解,讓我們開始吧!

  1. SpringSource Tool Suite 2.6.0.M1 已釋出。新版本改進了內容輔助和快速修復功能,為基於 Spring MVC @RequestMapping 的應用程式添加了新的嚮導和檢視。此外,它還提高了 Groovy 的內容輔助效能,並改進了 Groovy 的語法高亮顯示。
  2. Spring Data Graph - Neo4j 支援 1.0.0.M2 釋出。新版本包含許多新功能,包括改進的索引支援——為節點和關係提供完整的命名索引支援,移除節點和關係實體,根據型別策略在從框架方法例項化實體時進行嚴格型別檢查,支援動態投影到任意圖實體,以及對 Neo4j 1.2 的全新更新支援。
  3. Shekhar Gulati 在 IBM 的 DeveloperWorks 上釋出了一篇關於 Spring Roo(第一部分,從原始碼構建)的入門介紹。
  4. Tomcat 專案高階貢獻者 Mark Thomas 撰文介紹瞭如何在 Tomcat 7 中防範跨站指令碼攻擊 (XSS)
  5. VMWare vFabric GemFire 團隊剛剛製作了一個演示影片,展示如何設定 GemFire 的 Hibernate 快取模組。該影片演示瞭如何在 Maven 中配置該模組,然後展示了其在基於 Spring-DAO 的實現中的使用。最後,影片還演示瞭如何使用 Spring Insight 監控應用程式的效能。這是一個很棒的影片,介紹了一項更棒的技術!
  6. Sebastian Pietrowski 釋出了一篇關於 Spring Data Redis 的精彩入門文章
  7. Shekhar Gulati 貢獻了*另一篇*很棒的文章——同樣是關於 Spring Data 與 Redis 的。Spring Data 是一個包含一系列技術的總稱,旨在支援更專業化的資料持久化需求。其中很大一部分是對當今許多 NoSQL 資料儲存的深度支援,以及對基於 JDBC 的持久化的更專業化支援。
  8. Java Code Geeks 撰寫了一篇關於 使用 Spring AOP 進行面向切面程式設計的優秀文章。
  9. Jose Delgado 撰寫了一篇關於如何在 Spring Roo 中配置應用程式以處理兩個資料庫的精彩文章。如何在 Spring Roo 中配置應用程式以處理兩個資料庫
  10. Sivaprasadreddy Katamreddy 又有新作品了,這次是關於將控制反轉和依賴注入應用於方法設計
  11. Glyn Normington 在推文中提到 Eclipse Virgo 核心首次成功執行,它使用了基於 OSGi 4.3 框架掛鉤實現的區域有向圖。恭喜!Eclipse Virgo 是以前的 SpringSource dm Server 的新改進版本。
  12. David Dossot 轉推了一條有趣的帖子,探討了

    上個月初使用 Spring 與 Activiti BPMN 2 引擎

  13. 在 Tomcat 6 和 7 的眾多激動人心的新聞中,很容易忽略 Tomcat 5 仍在更新和支援。Tomcat 5.5.32 也剛剛釋出了!

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有