spring bean型別詳解

Bean型別

Spring有兩種型別bean,一種普通bean,另外一種工廠bean(FactoryBean)。

普通bean:在配置檔案中定義bean型別就是返回型別

工廠bean:在配置檔案定義bean型別可以和返回型別不一樣

普通Bean

普通bean的定義方法如下:

工廠Bean

第一步,建立類,讓該類作為工廠bean,實現介面FactoryBean

第二步,實現接口裡面的方法,在實現的方法中定義返回的bean型別

建立一個bean:

import com。hs。spring。pojo。Course;import org。springframework。beans。factory。FactoryBean;/** * 定義一個工廠bean */public class MyFactoryBean implements FactoryBean { //定義返回的bean @Override public Course getObject() throws Exception { Course course = new Course(); course。setCourseName(“數學”); return course; } @Override public Class<?> getObjectType() { return Course。class; } @Override public boolean isSingleton() { return false; }}

配置xml檔案:

測試如下:

@Testpublic void testFactoryBean(){ ApplicationContext context = new ClassPathXmlApplicationContext(“beans。xml”); Course course = context。getBean(“myFactoryBean”,Course。class); System。out。println(course);}