Spring自動裝配Beans
Spring框架,可以用 auto-wiring 功能會自動裝配Bean。要啟用它,只需要在 <bean>定義“autowire”屬性。
<bean id="customer" class="com.yiibai.common.Customer" autowire="byName" />
Spring中的4種自動裝配模式:
- no – 預設情況下,自動配置是通過“ref”屬性手動設定
- byName – 根據屬性名稱自動裝配。如果一個bean的名稱和其他bean屬性的名稱是一樣的,將會自裝配它。
- byType – 按資料型別自動裝配。如果一個bean的資料型別是用其它bean屬性的資料型別,相容並自動裝配它。
- constructor – 在建構函式引數的byType方式。
1. Auto-Wiring ‘no’
這是預設的模式,通過 'ref' 屬性來連線 bean。
<bean id="articleDao" class="com.angelia.spring.dao.ArticleDaoImpl">
<property name="dataSource" ref="dataSource" />
</bean>
2. Auto-Wiring ‘byName’
按屬性名稱自動裝配。由於對“articleDao” bean的名稱是相同於“articleService” bean 的屬性(“articleDao”)名稱,所以,Spring會自動通過setter方法將其裝配 – “setArticleDao(ArticleDao articleDao)“.
<bean id="articleDao" class="com.angelia.spring.dao.ArticleDaoImpl">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="articleService" class="com.angelia.spring.service.ArticleServiceImpl" autowire="byName" />
3. Auto-Wiring ‘byType’
按屬性的資料型別自動裝配。由於“articleDao” bean中的資料型別是與“articleService” bean的屬性(ArticleDao物件)的資料型別一樣的,所以,Spring會自動通過setter方法將其自動裝配。– “setArticleDao(ArticleDao articleDao)“.
<bean id="articleDao" class="com.angelia.spring.dao.ArticleDaoImpl">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="articleService" class="com.angelia.spring.service.ArticleServiceImpl" autowire="byType" />
4. Auto-Wiring ‘constructor’
通過建構函式引數的資料型別按屬性自動裝配Bean。由於 “articleDao” bean的資料型別與 “articleService” bean 的屬性(ArticleDao物件)的建構函式引數的資料型別是一樣的,所以,Spring通過構造方法自動裝配 – “public ArticleServiceImpl(ArticleDao articleDao)“.
<bean id="articleDao" class="com.angelia.spring.dao.ArticleDaoImpl">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="articleService" class="com.angelia.spring.service.ArticleServiceImpl" autowire="constructor" />
相關文章
- 自動裝配【Spring autowire】Spring
- Spring 自動裝配AutoWireSpring
- Spring Boot 自動裝配原理Spring Boot
- Spring IOC容器-自動裝配Spring
- 2、spring注入及自動裝配Spring
- Spring實戰:裝配bean-自動化裝配beanSpringBean
- Spring-04 Bean的自動裝配SpringBean
- Spring入門(二):自動化裝配beanSpringBean
- Spring9:Autowire(自動裝配)機制Spring
- Spring@Autowired註解與自動裝配Spring
- 深入理解Spring框架的自動裝配原理Spring框架
- Spring入門(八):自動裝配的歧義性Spring
- Spring框架使用@Autowired自動裝配引發的討論Spring框架
- 徹底搞明白Spring中的自動裝配和AutowiredSpring
- 深度剖析Spring Boot自動裝配機制實現原理Spring Boot
- spring自動裝配與spring_bean之間的關係(二)SpringBean
- SpringBoot - 自動裝配Spring Boot
- (一)spring beansSpringBean
- Spring中的applicationContext.xml實現自動裝配SpringAPPContextXML
- springboot之自動裝配Spring Boot
- spring裝配Spring
- SpringBoot自動裝配原理分析Spring Boot
- SpringBoot系列--自動裝配原理Spring Boot
- springboot自動裝配(1)---@SpringBootApplication註解怎麼自動裝配各種元件Spring BootAPP元件
- spring心得6--自動裝配知識點講解及案例分析Spring
- Spring bean 裝配SpringBean
- Spring Bean裝配SpringBean
- Spring – 裝配BeanSpringBean
- SpringBoot系列--自動裝配原理2Spring Boot
- SpringBoot自動裝配-原始碼分析Spring Boot原始碼
- SpringBoot自動裝配-自定義StartSpring Boot
- SpringBoot自動裝配原理解析Spring Boot
- SpringBoot 自動裝配的原理分析Spring Boot
- Spring裝配Bean(五)profile註解和解決自動注入的歧義性SpringBean
- 二、Spring裝配BeanSpringBean
- Spring裝配Bean(四)SpringBean
- Spring裝配Bean(一)SpringBean
- Spring裝配Bean(二)SpringBean