Posted on 2009-07-05 17:44
胡娟 閱讀(388)
評(píng)論(0) 編輯 收藏 所屬分類:
JAVA
通過(guò)構(gòu)造函數(shù)實(shí)例化bean,需要指定class屬性,給bean提供一個(gè)無(wú)參的構(gòu)造方法
<bean id="userDaoImpl" class="com.hujuan.dao.impl.UserDaoImpl"></bean>
通過(guò)靜態(tài)工廠實(shí)例化bean,除需要指定class屬性外,同時(shí)還必須使用factory-method屬性指定要調(diào)用的工廠方法的名稱
<!-- 使用靜態(tài)工廠實(shí)例化bean -->
<bean id="userDaoImplFactory" class="com.hujuan.dao.impl.UserDaoImplFactory" factory-method="createUserDao"></bean>
靜態(tài)工廠類
package com.hujuan.dao.impl;
public class UserDaoImplFactory{
public static UserDaoImpl createUserDao(){
return new UserDaoImpl();
}
}
通過(guò)實(shí)例工廠實(shí)例化bean,必須先實(shí)例化要實(shí)例化的bean,再通過(guò)factory-bean來(lái)設(shè)置使用哪個(gè)實(shí)例化工廠,通過(guò)factory-method來(lái)設(shè)置使用哪個(gè)方法
<!-- 使用實(shí)例工廠實(shí)例化bean -->
<bean id="userDaoImplFactory2" class="com.hujuan.dao.impl.UserDaoImplFactory"></bean>
<bean id="userDaoFactory" factory-bean="userDaoImplFactory2" factory-method="createUserDao2"></bean>
實(shí)例化工廠類
package com.hujuan.dao.impl;
public class UserDaoImplFactory{
public UserDaoImpl createUserDao2(){
return new UserDaoImpl();
}
}