下面是在Bean 管理(工厂bean)之前的学习,基于xml方式注入集合并实现
基于xml方式注入集合并实现 :http://t.csdn.cn/H0ipR
Spring 有两种类型bean,一种普通bean,另一种工厂bean(FactoryBean)
普通bean:在配置文件中定义bean类型就是返回类型
如下,在普通类型中,定义了book是什么类型,那么返回的book就必须是什么类型
- <bean id="book" class="com.atguigu.spring5.collectiontype.Book">
- <property name="list" ref="booklist">property>
- bean>

工厂bean:在配置文件定义bean类型可以和返回类型不一样。
第一步创建类,让这个类作为工厂bean,实现接口FactoryBean
第二步实现接口里面的方法,在实现的方法中定义返回的bean类型
-
- public class MyBean implements FactoryBean
{ -
- //定义返回bean
- @Override
- public Course getObject() throws Exception {
- Course course = new Course();
- course.setCname("abc");
- return course;
- }
-
- @Override
- public Class> getObjectType() {
- return null;
- }
-
- @Override
- public boolean isSingleton() {
- return FactoryBean.super.isSingleton();
- }
- }
测试类
- @Test
- public void testCollection3(){
- ApplicationContext context =
- new ClassPathXmlApplicationContext("bean3.xml");
- Course course = context.getBean("myBean", Course.class);
- System.out.println(course);
- }
xml
<bean id="myBean" class="com.atguigu.spring5.FactoryBean.MyBean">bean>
![]()