一、创建xml配置文件
<bean id="userService" class="com.example.bean.UserService"></bean> //默认为单实例
<!-- 单实例,效果同上 -->
<bean id="userService" class="com.example.bean.UserService" scope="singleton"></bean>
<!-- 多实例 -->
<bean id="userService" class="com.example.bean.UserService" scope="prototype"></bean>
<!-- 引用定义好的bean实例,property中name的值为该类中定义的属性名 -->
<bean id="userDao" class="com.example.ioc.UserDao"></bean>
<bean id="userService" class="com.example.ioc.UserService">
<property name="userDao" ref="userDao"></property>
</bean>
以上仅为示例,具体写代码时定义一次bean即可。
二、创建工厂类,解析配置文件
public static Object getBean(String id){
//解析xml文件
//根据id值得到对应的class属性
String classValue = "class属性值";
//使用反射创建类对象
Class clazz = Class.forName(classValue);
//创建类对象
return clazz.newInstance();
}
三、调用创建对象方法
UserService userService = (UserService) getBean("userService");