Bean配置
Bean的定义
- id,bean的名字,实例名,必须唯一(name,别名也必须唯一)
- class,全类名
- Bean的创建方式(三种方式)
- Bean之间的关系(两种依赖注入方式)
先附上实体类和工厂类
public class Goods {
private String name;
private double price;
private int num;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public Goods(String name, double price, int num) {
super();
this.name = name;
this.price = price;
this.num = num;
}
public Goods() {
}
}
public class GoodsFactory {
public static Goods newInstance(String name, double price, int num) {
return new Goods(name, price, num);
}
public Goods createGoods(String name, double price, int num) {
return new Goods(name, price, num);
}
}
Bean实例的创建
- 默认构造器
<bean id="good" class="com.shinerio.domain.Goods"></bean>
- 带参构造器
<bean id="good" class="com.shinerio.domain.Goods">
<constructor-arg index="0" value="可乐"></constructor-arg>
<constructor-arg index="1" value="3.0"></constructor-arg>
<constructor-arg index="2" value="100"></constructor-arg>
</bean>
- 工厂类的静态方法
<bean id="good" class="com.shinerio.factory.GoodsFactory" factory-method="newInstance">
<constructor-arg index="0" value="可乐"></constructor-arg>
<constructor-arg index="1" value="3.0"></constructor-arg>
<constructor-arg index="2" value="100"></constructor-arg>
</bean>
- 工厂类的实例方法
<bean id="goodsFactory" class="com.shinerio.factory.GoodsFactory"> </bean>
<bean id="good" class="com.shinerio.domain.Goods" factory-bean="goodsFactory" factory-method="createGoods">
<constructor-arg index="0" value="可乐"></constructor-arg>
<constructor-arg index="1" value="3.0"></constructor-arg>
<constructor-arg index="2" value="100"></constructor-arg>
</bean>
本文介绍了Bean实例的三种创建方式:默认构造器、带参数构造器及通过工厂类创建。同时展示了如何利用XML配置文件来指定这些创建方式的具体实现。
1238

被折叠的 条评论
为什么被折叠?



