这两张方式不推荐使用,因为spring已经实现了这部分功能。
<!-- 非惊天工厂注入法 -->
<
bean
id
=
"carFactory"
class
=
"com.modle.CarFactory"
></
bean
>
<!-- 1 -->
<
bean
id
=
"car3"
factory-bean
=
"carFactory"
factory-method
=
"createCar"
></
bean
>
<!-- factory-bean 对应的是工厂类里的bean的id factory-method 对应的是工厂类new bean的方法 -->
<!-- 静态工厂注入 -->
<
bean
id
=
"car5"
class
=
"com.modle.CarFactory"
factory-method
=
"createGScar"
></
bean
>
对应工厂类:
package
com.modle;
public
class
CarFactory {
/**
* car 的工厂
*/
public
Car createCar() {
Car car =
new
Car();
car.setBrand(
"林肯"
);
car.setPrice(0.123);
return
car;
}
public
static
Car createGScar() {
Car car =
new
Car();
car.setBrand(
"传奇"
);
car.setPrice(18.28);
return
car;
}
}