Spring 2.0 引入了註解支援和註解感知配置選項,可供使用 Java 5(或更高版本)進行開發的 Spring 使用者使用
隨著 Spring 2.1 的釋出,註解驅動配置這一主題得到了顯著擴充套件,並將在我們向 RC1 版本邁進的過程中繼續發展。事實上,現在可以透過註解來驅動 Spring 的依賴注入。此外,Spring 可以發現需要在應用程式上下文中配置的 bean。
這篇部落格文章將作為一篇教程式的介紹,分 10 個易於遵循的步驟介紹基本功能。我將在本週晚些時候跟進,提供有關更多高階功能和定製選項的資訊。如果您對其他配置選項感興趣,也應該查閱 Spring Java 配置專案和這篇部落格。
本教程需要至少 Java 5,推薦使用 Java 6(否則在步驟 1 結束時有一個單獨的要求)。
步驟 1
獲取 spring-framework-2.1-m1-with-dependencies.zip。解壓後,您將在 'dist' 目錄中找到 spring.jar 和 spring-mock.jar。將它們新增到您的 CLASSPATH 中,以及以下檔案(所示路徑是相對於解壓後的 2.1-m1 歸檔檔案的 'lib' 目錄)
- asm/asm-2.2.3.jar
- asm/asm-commons-2.2.3.jar
- aspectj/aspectjweaver.jar
- hsqldb/hsqldb.jar
- jakarta-commons/commons-logging.jar
- log4j/log4j-1.2.14.jar
(注意:如果您執行的不是 Java 6,您還需要新增 j2ee/common-annotations.jar)
步驟 2
提供示例的介面和類。我已盡力使其儘可能簡單,同時又能演示主要功能。我將所有程式碼和配置都包含在一個“blog”包中。我建議遵循相同的指導方針,以便示例可以按原樣工作;否則,請務必進行必要的修改。首先,是
GreetingService 介面
public interface GreetingService {
String greet(String name);
}
然後,一個簡單的實現
public class GreetingServiceImpl implements GreetingService {
private MessageRepository messageRepository;
public void setMessageRepository(MessageRepository messageRepository) {
this.messageRepository = messageRepository;
}
public String greet(String name) {
Locale locale = Locale.getDefault();
String message = messageRepository.getMessage(locale.getDisplayLanguage());
return message + " " + name;
}
}
由於該服務依賴於 MessageRepository,請定義…