Spring框架学习:IOC操作Bean管理-FactoryBean(五)

1、Spring有两种类型bean,一种普通bean,另外一种工厂bean(FactoryBean)
2、普通bean:在配置文件中定义bean类型就是返回类型
3、工厂bean:在配置文件定义bean类型可以和返回类型不一样
第一步创建类,让这个类作为工厂bean,实现接口FactoryBean
第二步实现接口里面的方法,在实现的方法中定义返回的bean类型

FactoryBean的代码

MyBean:

public class Mybean implements FactoryBean<Book> {

    //返回的对象-可以通过反射修改返回对象
    @Override
    public Book getObject() throws Exception {
        //伪代码
        Book book = new Book();
        List<String> lists = new ArrayList<>();
        lists.add("百年孤独");
        book.setList(lists);
        return book;
    }

    @Override
    public Class<?> getObjectType() {
        return null;
    }

    @Override
    public boolean isSingleton() {
        return FactoryBean.super.isSingleton();
    }
}
<bean id="myBean" class="com.spring5.factorybean.Mybean"></bean>

junit测试:

@Test
    public void test3(){

        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bean3.xml");
        Book myBean = applicationContext.getBean("myBean", Book.class);

        System.out.println(myBean);
    }

测试结果:

Book{list=[百年孤独]}
暂无评论

发送评论 编辑评论


				
上一篇
下一篇