Spring 创建Bean的 三种方式
1.读取XML文件,通过类名,ClassForName("类名"),创建一个Class对象,如果是<properity>通过Class 对象newInstance()能够创建 对象,通过set方法设置属性.
如果是<construct-arg>标签,通过构造方法创建Bean
2.通过静态工厂方法创建Bean
<!--静态的工厂方法核心是class+factory-method --> <bean id="person" class="com.mc.base.learn.spring.factory.PersonStaticFactory" factory-method="createPerson"></bean>
配置xml 的时候,需要配置创建 对象 的工厂类,和创建这个对象 的方法,
工厂类 PersonStaticFactory 和 工厂方法 createPerson
我们需要自己创建工厂,用来创建对象, 然后 由spring 将这个对象 放到ioc容器中. 可以通过getBean得到.
2.通过工厂方法创建Bean
<!-- 实例工程方法需要先创建工厂实例,然后在创建所需对象的时候,将其赋值为factory-bean --> <bean id="personFactory" class="com.mc.base.learn.spring.factory.PersonFactory"></bean> <bean id="person2" factory-bean="personFactory" factory-method="createInstance"></bean>
我们在xml 中配置 工厂类 的bean ,然后,person bean 中需要 配置 工厂Bean 的id 和 创建对象的方法.
还是要自己创建一个工厂,用来创建这个对象,spring 会将产生的对象放入 ioc 的容器中