Spring 2.0 中的 Before Advice

工程 | Ben Hale | 2006 年 9 月 5 日 | ...

正如大家所知,Spring 2.0 的一大改進是增加了 AspectJ 切點語言以及整體上更好地集成了 AspectJ。雖然我認為大家都相信這從長遠來看會帶來巨大的好處,但也導致了一些問題。我們發現,Spring AOP 一直以來都有一些 AspectJ 從未有的行為。

出現的一個大問題是 Before advice 的行為。如果你在 Spring 1.x 中使用過 Spring AOP,你可能知道 Spring 允許你在引數傳遞給目標之前改變其值…

Spring 標準化數量不斷增加

工程 | Steven Schuurman | 2006 年 8 月 29 日 | ...

Spring - 將長期存在 我每天拜訪許多客戶並與更多人交談。這包括現有的 Interface21 客戶以及歐洲各地對我們產品和服務感興趣的公司。我注意到我進行的對話中有一個重複出現的主題:Spring 已經到來,並且將長期存在。

在過去的一年裡,我見證了許多執行層面的決定,這些決定在領先的企業級 Java 開發公司中全面推廣了 Spring 的標準化。就在兩週前,我問了一個客戶——歐洲最大…的 Java 單元經理

建立 Spring 2.0 名稱空間?使用 Spring 的 AbstractBeanDefintionParser 層次結構。

工程 | Ben Hale | 2006 年 8 月 28 日 | ...

最近我似乎一直在專注於建立 Spring XML 名稱空間。在 XSD 和 Spring 方面都經過了很多反覆試驗,才找到了建立解析器的良好模式。我遇到的最大困惑之一是 AbstractBeanDefinitionParser 層次結構。目前這方面的文件不是特別完善(但有一個 JIRA 票據,所以會在正式釋出前修復),因此我將為你介紹一下你的選擇、它們適用於什麼場景以及如何使用它們。

AbstractBeanDefinitionParser 的選擇

Spring 提供了三種主要的 BeanDefinitionParser 來幫助你解析 XML 名稱空間。

我將從最具體的開始,逐步介紹到最通用的,展示如何在需要時獲得更大的能力。如果你想跳過示例直接看摘要,請檢視此處

驗證邏輯(以及我的第一篇帖子!)

工程 | Colin Yates | 2006 年 8 月 25 日 | ...

大家好!

這是我上個月加入 Interface21 以來寫的第一篇帖子。我的前一個部落格現已正式廢棄,我不會再更新它了。

那麼我的第一篇帖子(除了自我介紹之外)的主題是什麼呢?  驗證邏輯。  這不會是一個關於如何在 Spring 框架中執行驗證的詳細講解,而是會討論一個我特別在意的問題 :)

特別地,我想討論一下驗證邏輯中究竟應該包含什麼。  這似乎是一個無需思考就能回答的問題;“用於驗證指定資料的邏輯”。  好的,這確實是一個無需思考的問題,但請繼續往下看 :)。正如你所知,Spring 框架透過 Errors Validator 介面為你的驗證提供了一個很好的抽象層。  特別是 Validator,你可以在其中將特定業務的驗證規則應用於填充好的領域物件。  Spring 優秀的繫結支援負責更新你的領域模型…

Steven 的 biz.blog 有了新家

工程 | Steven Schuurman | 2006 年 8 月 13 日 | ...

大家好,

這只是一個簡短的條目,想告訴大家我已正式將我的 biz.blog 遷移到這裡,我們的新 Interface21 團隊部落格。  我很高興這個群組部落格將作為 Interface21 的聲音。  對於認識我的人來說,你們知道會看到一種不同視角

我有一些儲存的草稿正在處理。請留意即將釋出的提供 Interface21 業務方面見解的新條目...

在那之前,Steven

訊息驅動的 POJO!

工程 | Mark Fisher | 2006 年 8 月 11 日 | ...

在所有新的 Spring 2.0 特性和改進中,我必須承認訊息驅動的 POJO 是我個人最喜歡的一個。我感覺很多其他 Spring 使用者也會有同感。

在這裡我提供一個快速介紹。還有很多內容可以展示,我將在後續帖子中跟進。不過現在,這應該能為你提供足夠的資訊,以便使用一些真正的基於 POJO 的非同步 JMS 快速上手!我希望你們和我一樣對此感到興奮 ;)

先決條件

你的 classpath 中需要包含以下 JAR 檔案。我也列出了我使用的版本(任何 spring-2.x 版本應該都可以。事實上我剛剛在兩分鐘前把 RC3 放了進去)

  • activemq-core-3.2.2.jar
  • concurrent-1.3.4.jar
  • geronimo-spec-j2ee-managment-1.0-rc4.jar
  • commmons-logging-1.0.4.jar
  • log4j-1.2.9.jar
  • jms-1.1.jar
  • spring-2.0-rc3.jar

設定環境

首先,我們需要設定環境。我將使用 ActiveMQ,但更換提供者的影響將僅限於修改此檔案。我將此檔案命名為“shared-context.xml”,因為正如你很快會看到的,我將為 JMS 通訊的兩端匯入這些 bean 定義。以下是“共享”的 bean 定義:連線工廠和兩個佇列(一個用於請求,一個用於回覆)


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
                           http://www.springframework.org/schema/beans/spring-beans.xsd">
	
    <bean id="requestQueue" class="org.activemq.message.ActiveMQQueue">
        <constructor-arg value="requestQueue"/>
    </bean>
 
    <bean id="replyQueue" class="org.activemq.message.ActiveMQQueue">
        <constructor-arg value="replyQueue…

使用 Spring 2.0 和 AspectJ 簡化企業應用

工程 | Adrian Colyer | 2006 年 8 月 10 日 | ...

我為 InfoQ 網站寫的一篇文章剛剛釋出:使用 Spring 2.0 和 AspectJ 簡化企業應用

我聽過一些人說“AOP 太難了”,或者“AOP 使事情變得過於複雜”。從某種程度上說,這篇文章正是為了反駁這些觀點而寫的(因此標題是“簡化企業應用開發”)。我的意思是,AOP 的全部意義在於,你將變得複雜和糾纏不清的軟體,透過引入切面,讓每個模組再次擁有單一職責,從而簡化實現。然後當然對於一些…

在 Spring 中使用 JPA 而不引用 Spring

工程 | Ben Hale | 2006 年 8 月 7 日 | ...

Spring 2.0 添加了對 JPA 資料訪問標準的支援,幷包含了所有預期會有的標準 Spring 支援類。Mark Fisher 有一篇關於如何使用這項新支援的精彩帖子。然而,我們不斷收到的一個問題是,為什麼有人會想使用 Spring 類 (JpaTemplate) 來訪問 EntityManager。這個問題的最佳答案在於 JpaTemplate 提供的附加價值。除了提供作為 Spring 資料訪問標誌的一行式便捷方法之外,它還提供了自動事務參與和從 的轉換

關於 Spring 的 10 個常見誤解

工程 | Mark Fisher | 2006 年 8 月 4 日 | ...

昨天有幾篇與即將出版的 Beginning Spring 2 一書相關的帖子,我想在這裡指出它們。

首先,由於這本書會引起 Spring 新手或只是當前對此好奇的人的興趣,我們決定最好加入一些關於 Spring 常見誤解的討論。這些內容已釋出在此處
http://www.oreillynet.com/onjava/blog/2006/08/ten_common_misconceptions_abou.html
以及 Apress 部落格上:http://ablog.apress.com/?p=1221



其次,Interface21 的 Steven Devijver,本書不知疲倦的主編,釋出了一篇精彩的概覽
http://blog.interface21.com/main/2006/08/03/finishing-beginning-spring-2-from-novice-to-professional/.


本書 Beginning Spring 2: from Novice to Professional 將於今年十月上市。雖然它旨在為 Spring 新使用者提供一個溫和的入門,但即使你已經使用 Spring Framework 一段時間了,它對於“填補空白”也將非常有用。換句話說,這本書涵蓋了許多內容:Spring 容器、AOP、資料訪問、MVC 等等。內容包括許多新的 Spring 2.0 特性——最值得注意的是,有一整章探討 Spring 在 AOP 方面新的和改進的方法,例如基於 XSD 的 AOP 名稱空間、與 AspectJ 切點表示式語言的整合以及 @AspectJ 整合!(別擔心,Spring 2 向後相容——遷移路徑也很容易)。書中自始至終提供了理論和示例的實用平衡。這些示例都基於一個有趣的示例應用程式(不過於簡單)。當 Steven 請我貢獻一些練習時,我個人很高興——這是他為初學者提供優質資源的又一個絕妙想法。第一組練習詳細講解了從基本接線到使用 FactoryBeans 和外部化屬性檔案的多種依賴注入技術。第二組練習專注於 AOP——包括新的名稱空間和 @AspectJ 風格。

我們期待在書本釋出後有一個活躍的配套網站,當然你也可以繼續在 Interface21 團隊部落格找到許多關於 Spring 2.0 特性的精彩討論和示例。

十二月在佛羅里達州好萊塢體驗 Spring

工程 | Keith Donald | 2006 年 8 月 3 日 | ...

在過去的一個月裡,Jay Zimmerman 和我一直在努力規劃 The Spring Experience 2006 (TSE)。建立一個一流的技術大會並非易事——需要花費數小時才能找到演講者和內容的完美組合。

我很自豪地說,我們現在已準備好啟動這場前所未有的盛會。請檢視詳情

The Spring Experience 2006

我希望在那裡見到你。以下是我認為這場活動獨一無二的地方
  • 為期三整天,在五星級海灘度假村舉行,分為 5 個專題,共 55 場九十分鐘的會議。
  • 關於 Spring 2.0 的獨家優質技術內容。 半數會議由核心 Spring 開發者主持,他們深入地應用最新的 Spring 功能。這包括 Rod Johnson、Juergen Hoeller、Adrian Colyer、Rob Harrop、Colin Sampaleanu、Ben Alex、Arjen Poutsma、Erwin Vervaet,以及本人。
  • 來自領先 Java 軟體創新者的前沿會議。 這包括 Eclipse RCP 和 Equinox 專案負責人 Jeff McCaffer;Groovy 專案負責人 Guilluame LaForge;JMX 負責人 Eamonn McManus;BEA Kodo JPA 負責人 Patrick Linskey,以及 Java 持久化架構 (JPA) 負責人 Mike Keith。
  • 大會後所有會議同步音訊幻燈片的特權訪問,讓你不錯過任何精彩瞬間。
  • 註冊包含全套早餐、午餐和晚餐。
  • “與大師面對面”使用者 BOF。 Spring 使用者與 Spring 專案負責人互動的絕佳機會。
  • 兩次超棒派對,一次在週五晚上,一次在週六下午的海灘派對,還有一場 Spring 使用者 vs 開發者的排球比賽。
  • 炫酷的大會贈品。 而且有很多。註冊參會者將獲得全方位會議通行證、定製(非常酷)的 TSE 筆記型電腦包、定製設計的筆記本活頁夾、限量版 TSE 2006 T 恤,甚至還有一條官方的 TSE 2006 沙灘毛巾。你還有機會贏得 iPod 和 XBox 360。
  • 多樣性。無論你是硬核企業開發者、Web 應用開發者,還是領先的軟體架構師,這場大會都能滿足你。去年大會吸引了來自 20 個國家的 250 人。今年我們預計將有來自 25 個以上國家的 500 名參會者。這將是一場充滿樂趣、學習和交流的絕佳機會。
沒有比十二月在佛羅里達州好萊塢更好的地方了。在 The Spring Experience 2006 與你和你的團隊見面!

獲取 Spring 新聞通訊

訂閱 Spring 新聞通訊保持聯絡

訂閱

搶先一步

VMware 提供培訓和認證,助力你快速提升。

瞭解更多

獲取支援

Tanzu Spring 透過一項簡單訂閱提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援及二進位制檔案。

瞭解更多

即將舉行的活動

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

檢視全部