- 动态工厂: 通过工厂类的工厂方法来实例一个bean。
这里工厂类是一个bean,需要实例化的类也是一个bean,都配置到xml文件中。 在需要实例化的bean中指定工厂类和方法
<!-- 注册工厂 -->
<bean id="factory1" class="cn.xiechengxu.util.TeacherFactory"></bean>
<!--
Spring容器,当前teacher类的实例化操作,由动态工厂
-->
<bean id="teacher"
class="cn.xiechengxu.beans.Teacher"
factory-bean="factory1"
factory-method="createTeacher">
</bean>
2.静态工厂
静态工厂不需要实例化工厂类本身,所以在配置bean时,就不需要配置工厂bean,需要在配置实例化bean时,直接指定类和方法。 class 为工厂类的全路径,factory-method 时静态方法。
<bean id="teacher"
class="cn.xiechengxu.util.TeacherFactory"
factory-method="createTeacher">
</bean>
网友评论