當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring 自动装配模式之byType
生活随笔
收集整理的這篇文章主要介紹了
Spring 自动装配模式之byType
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Spring 容器看作 beans,在 XML 配置文件中 beans 的?autowire?屬性設置為?byType。然后,如果它的?type?恰好與配置文件中 beans 名稱中的一個相匹配,它將嘗試匹配和連接它的屬性。如果找到匹配項,它將注入這些 beans,否則,它將拋出異常。
在配置文件中,如果一個 bean 定義設置為自動裝配?byType,并且它包含?SpellChecker?類型的?spellChecker?屬性,那么 Spring 就會查找定義名為?SpellChecker?的 bean,并且用它來設置這個屬性。你仍然可以使用 標簽連接其余屬性。
看個例子:
TextEditor:
public class TextEditor {private SpellChecker spellChecker;private String name;public void setSpellChecker( SpellChecker spellChecker ) {this.spellChecker = spellChecker;}public SpellChecker getSpellChecker() {return spellChecker;}public void setName(String name) {this.name = name;}public String getName() {return name;}public void spellCheck() {spellChecker.checkSpelling();}}正常情況下beans.xml里的顯式裝配:
采用by Name自動裝配的beans.xml寫法:
<?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/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><!-- Definition for textEditor bean --><bean id="textEditor" class="com.sap.TextEditor"autowire="byType"><property name="name" value="Generic Text Editor" /></bean><!-- Definition for spellChecker bean --><bean id="SpellChecker" class="com.sap.SpellChecker"></bean></beans>可以看到,在by Type自動裝配模式下,beans.xml里的spellChecker bean的ID可以隨便取,因為這個屬性是為by Name裝配模式服務的,在by Type模式下忽略。
總結
以上是生活随笔為你收集整理的Spring 自动装配模式之byType的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++:友元
- 下一篇: Spring 自动装配模式之构造函数装配