Spring容器实例化、bean的实例化
来源:互联网 发布:sql server2008 下载 编辑:程序博客网 时间:2024/05/16 19:36
一、实例化Spring容器的方式:
·在类路径(classpath)下寻找配置文件来实例化容器:ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
注意:括号中的参数是指定Spring的配置文件的,可以用数组一次指定多个配置文件,如:(new String[] ("beans.xml"));
二、在Spring2.5容器中有三种实例化bean的方式:
一是使用类构造器实例化bean,即只需在配置文件中配置一个bean对象,如下:
<bean id="userDAO" class="com.aptech.jb.dao.impl.UserDAOImpl" />
二是使用静态工厂方法实例化:
·首先创建一个工厂类,例如:UserFactory;在该类中创建一个静态的createUser()方法,该方法返回一个UserDAOImpl实例;例如:
public class UserFactory {
// 创建一个静态的方法,该方法返回一个UserDAOImpl实例
public static UserDAOImpl createUser()
{
return new UserDAOImpl();
}
}
·之后,在Spring容器中配置工厂类的bean,由于工厂类中返回一个UserDAOImpl对象,所以还是相当于创建了UserDAOImpl bean的实例,配置如下:
<!-- 使用静态工厂方法实例化bean -->
<bean id="userDAO2" class="com.aptech.dao.UserFactory" factory-method="createUser"></bean>
三是使用实例工厂方法实例化bean:
·首先创建一个工厂类,例如:UserFactory;在该类中创建一个非静态的createUser2()方法,该方法返回一个UserDAOImpl实例;例如:
public class UserFactory {
// 创建一个静态的方法,该方法返回一个UserDAOImpl实例
public UserDAOImpl createUser2()
{
return new UserDAOImpl();
}
}
·之后,将工厂bean配置到Spring容器中,如下:
<!-- 使用实例工厂方法实例化bean -->
<bean id="userFactory" class="com.aptech.dao.UserFactory"></bean>
<!-- 利用工厂bean创建一个UserDAObean,因为工厂bean返回一个UserDAOImpl实例 -->
<bean id="userDAO3" factory-bean="userFactory" factory-method="createUser2"></bean>
转载于:http://blog.163.com/qqabc20082006@126/blog/static/22928525200911231168969/
- Spring容器中Bean的实例化
- 实例化Spring容器,实例化bean
- Spring容器实例化、bean的实例化
- Spring容器Bean的实例化方式和声明周期
- Spring IoC容器实例化bean的三种方式
- Spring-- Ioc 容器Bean实例化的几种场景
- Spring IOC容器中Bean的实例化过程
- spring容器的bean什么时候被实例化
- Spring系列--bean容器的实例化之构造器创建bean实例(采用dtd约束)
- 【Spring.Framework】【IoC】Spring容器,Bean及Bean的实例化
- SPRING BEAN的实例化
- spring Bean的实例化
- Spring的Bean实例化
- Spring-Bean的实例化
- Spring 实例化bean
- spring实例化bean
- Spring实例化bean
- 实例化Spring容器
- 学习日记之享元模式和Effective C++
- POJ 3282 Ferry Loading IV(模拟,队列)
- "黑马程序员"针对for循环的一些学习及案例
- Objective-c中使用字面量语法
- UVA812-Trade on Verweggistan(暴力)
- Spring容器实例化、bean的实例化
- Java 中int与byte数组转换详解
- hdu 1087 简单dp
- 南阳 833 取石子(对称的博弈)
- java.util.Scanner应用详解
- 【leetcode】Simplify Path
- opencv分水岭算法对图像进行分割
- 基于AVR128的简单Modbus协议实现
- Java常用监听器