Spring 2.0 引入了註解支援和註解感知配置選項,Spring 使用者在使用 Java 5 (或更高版本) 開發時可以利用這些選項
在 Spring 2.1 中,這種註解驅動的配置主題已得到顯著擴展,並且隨著我們向 RC1 版本的發展,它將繼續發展。 事實上,現在可以透過註解來驅動 Spring 的依賴注入。 此外,Spring 可以發現需要在應用程式上下文中配置的 Bean。
此部落格文章將作為對基本功能的教學式介紹,共 10 個易於遵循的步驟。 我將在本週稍後跟進一些更進階的功能和自訂選項的資訊。 如果你對替代配置選項感興趣,你還應該查看 Spring Java Configuration 專案和 此部落格。
本教學課程至少需要 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
提供範例的介面和類別。 我試圖盡可能地保持簡單,但仍能展示主要功能。 我將所有程式碼和配置都包含在一個「部落格」套件中。 我建議遵循相同的準則,以便範例按原樣工作; 否則,請務必進行必要的修改。 首先,是
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,因此定義…