系列四、IOC操作Bean管理(FactoryBean)

一、概述

  • Spring中有2种类型的Bean,一种是普通Bean,另外一种是工厂Bean(FactoryBean);
  • 普通Bean:在配置文件中定义的Bean的类型就是返回类型;
  • 工厂Bean:在配置文件中定义的Bean的类型可以和返回类型不一样;

        (1)创建类,让这个类作为工厂bean,实现接口FactoryBean;

        (2)实现接口里边的方法,在实现的方法中定义返回的Bean的类型;

二、自定义Bean创建对象

// 工厂类
public class MyFactoryBean implements FactoryBean {

    @Override
    public Course getObject() throws Exception {
        Course course = new Course("Springboot课程");
        return course;
    }

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

    @Override
    public boolean isSingleton() {
        return false;
    }
}

// 配置文件



    



// 测试
/**
 * Bean管理:使用自定义Bean创建对象
 */
@Test
public void beanManagementTest8() {
	ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext9.xml");
	Course course = context.getBean("myFactoryBean", Course.class);
	System.out.println(course);
}
// 结果
Course(name=Springboot课程)

你可能感兴趣的:(Spring5系列,java,前端,数据库)