1.什么是Bean?
Spring Bean是被实例的,组装的及被Spring 容器管理的Java对象。
Spring 容器会自动完成@bean对象的实例化。
创建应用对象之间的协作关系的行为称为:装配(wiring),这就是依赖注入的本质。
2.Bean的配置
name属性 和id属性: 确定容器里的key的值
class属性: 确定 该bean 对象的类型
3.spring容器中 Bean的实例化方式
1.默认:调用该类的无参构造方法
<bean id="user" class="com.rimi.bean.User">
使用该方法是 类中必须要有 无参构造
2.使用实例工厂
a. 需要创建一个工厂类 工厂类中提供成员方法 来创建 产品对象
public class UserFactory{
public User getUser(){
return new User();
}
}
b. 把工厂和产品 同时交给Spring容器进行管理
<!-- 工厂bean class是工厂的类路径-->
<bean id="userfactory" class="com.rimi.bean.UserFactory"></bean>
<!-- 产品bean class是产品的类路径 factory-bean 要指向spring容器管理的一个bean factory-method:工厂生产产品的方法-->
<bean id="user" class="com.rimi.bean.User" factory-bean="userfactory" factory-method="getUser">
3.使用静态工厂来实例化对象
a. 需要一个工厂 提供静态方法 来生产产品
public class UserStaticFactory{
public static User getUser(){
return new User();
}
}
b. 静态工厂 不需要创建和管理工厂bean 直接写产品bean
<!-- 该bean 代表的的是产品(User) class代表的是静态工厂的类 factory-method代表的是 工厂里生产产品的静态方法-->
<bean id="user" class="com.rimi.bean.UserStaticFactory" factory-method="getUser">