spring--创建Bean的三种方式
程序员文章站
2022-05-24 18:22:16
...
创建Bean的三种方式
1、使用默认构造函数直接构造bean对象。没有默认构造方法就无法创建。
这个类是这样:
package com.xwzr.dao.imp;
import com.xwzr.dao.IDao;
public class DaoImp implements IDao {
public void saveUser(){
System.out.println("保存成功");
}
}
xml中的配置:
<bean name="dao" class="com.xwzr.dao.imp.DaoImp" ><bean/>
2、使用普通工厂中的方法创建对象,其中bean 一般是某个方法的返回值。
这个类一般是在jar包中,或者是不容易修改的工具中,并且没有默认构造函数
例如:
package com.xwzr.factocy;
import com.xwzr.dao.IDao;
import com.xwzr.dao.imp.DaoImp;
public class FactoryDao {
public IDao getIDao(){
return new DaoImp();
}
}
xml的配置:
<!--先配置工厂类-->
<bean name="factory" class="com.xwzr.factocy.FactoryDao"></bean>
<!--在配置工厂类的方法-->
<bean name="Dao" factory-bean="factory" factory-method="getIDao"></bean>
3、静态方法的返回值。类似第二种;
例如:
package com.xwzr.factocy;
import com.xwzr.dao.IDao;
import com.xwzr.dao.imp.DaoImp;
public class FactoryDao {
public static IDao getIDao(){
return new DaoImp();
}
}
xml:
<bean name="Dao" class="com.xwzr.factocy.FactoryDao" factory-method="getIDao"></bean>