IOC容器-工厂模式
在spring中配置Bean是很常见的事情,其中spring有两种类型的bean,一种是普通的bean,一种是工厂Bean。
普通的Bean:这就是我们配置最多的bean,这样的bean的类型是和配置文件的类型的是一样的。比如<bean id="book" class="org.example.collectionType.Book"> <property name="list" ref="bookList"></property> </bean>
这里的配置文件的类型都是book。
工厂模式Bean:返回值类型和配置文件的类型是不一样的。
<bean id="Mybean" class="org.example.collectionType.facatorybean.Mybean"> </bean>
而这里的Mybean需要重写自己的返回值。
@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();
}
}
通过返回值的类型,我们可以看出我们的返回值是Course
.同样的,测试文件的class文件也需要更新。
@Test
public void test3(){
ApplicationContext ctx = new ClassPathXmlApplicationContext("bean3.xml");
Course course= ctx.getBean("Mybean", Course.class);
System.out.println(course);
}
如果觉得这篇有帮助,欢迎访问我的gitee。码云网址https://gitee.com/Mr__young_yang。力扣主页:羊村儿的希望