Spring Bean引用例子
如何注入值到Spring bean屬性
Spring bean加載多個配置文件
Spring內部bean實例
Spring Bean作用域實例
Spring集合 (List,Set,Map,Properties) 實例
Spring ListFactoryBean實例
Spring SetFactoryBean實例
Spring MapFactoryBean例子
Spring注入日期到bean屬性-CustomDateEditor
Spring PropertyPlaceholderConfigurer實例
Spring bean配置繼承
Spring依賴檢查
Spring使用@Required註解依賴檢查
Spring自定義@Required-style註解
Spring Bean InitializingBean和DisposableBean實例
Spring Bean init-method 和 destroy-method實例
Spring @PostConstruct和@PreDestroy實例
Spring由構造方法自動裝配
在Spring中,可以使用「通過構造自動裝配」,實際上是按構造函數的參數類型自動裝配。 這意味着,如果一個bean的數據類型與其他bean的構造器參數的數據類型是相同的,那麼將自動裝配。
下面看看Spring構造函數自動裝配的一個完整例子。
1. Beans
這裏有兩個 beans, 分別是:developer 和 language
package com.yiibai.common;
public class Developer {
private Language language;
//autowire by constructor
public Developer(Language language) {
this.language = language;
}
//...
}
package com.yiibai.common;
public class Language {
private String name;
//...
}
2. Spring裝配
通常情況下,你可以通過構造這樣自動裝配 Bean:
<bean id="language" class="com.yiibai.common.Language" >
<property name="name" value="Java" />
</bean>
輸出
Developer [language=Language [name=Java]]
隨着自動裝配用構造函數啓用後,你可以不設置構造器屬性。Spring會找到兼容的數據類型,並自動裝配它。
<bean id="language" class="com.yiibai.common.Language" >
<property name="name" value="Java" />
</bean>
輸出
Developer [language=Language [name=Java]]