java fup spring
来源:互联网 发布:mac用迅雷下不了东西? 编辑:程序博客网 时间:2024/06/04 18:29
ApplicationContext ctx =new FileSystemXmlApplicationContext("src/applicationContext.xml");
ApplicationContext context = new ClassPathXmlApplicationContext("context.xml");
配置工厂Bean
通常由应用程序直接使用new创建新的对象,为了将对象的创建和使用相分离,采用工厂模式,即应用程序将对象的创建及初始化职责交给工厂对象.
一般情况下,应用程序有自己的工厂对象来创建bean.如果将应用程序自己的工厂对象交给Spring管理,那么Spring管理的就不是普通的bean,而是工厂Bean.
调用getBean()方法,Spring返回的不是直接创建的Bean的实例,而是由工厂Bean创建的Bean实例.
一般在Spring中配置工厂Bean,有3中不同类型的工厂Bean的配置.
1.静态工厂
创建具体Bean实例的是静态方法
import java.util.Random;
public class StaticFactoryBean {
public static Integer createRandom() {
return new Integer(new Random().nextInt());
}
}
}
}
将其纳入Spring容器来管理,需要通过factory-method指定静态方法名称
<bean id="random"
class="example.chapter3.StaticFactoryBean"
factory-method="createRandom" //createRandom方法必须是static的,才能找到
scope="prototype"
/>
class="example.chapter3.StaticFactoryBean"
factory-method="createRandom" //createRandom方法必须是static的,才能找到
scope="prototype"
/>
测试:
public static void main(String[] args) {
XmlBeanFactory factory = new XmlBeanFactory(new ClassPathResource("config.xml"));
System.out.println(factory.getBean("random").toString());
XmlBeanFactory factory = new XmlBeanFactory(new ClassPathResource("config.xml"));
System.out.println(factory.getBean("random").toString());
//StaticFactoryBean sfb = (StaticFactoryBean)factory.getBean("random");
//System.out.println(sfb.createRandom().toString());
//System.out.println(sfb.createRandom().toString());
//调用getBean()时,返回随机数.如果没有指定factory-method,会返回StaticFactoryBean的实例,即返回工厂Bean的实例
}
}
- java fup spring
- java---Spring
- java spring
- java - Spring
- java spring
- java spring
- 【java】【spring】spring cron表达式
- JAVA,JSP,SPRING
- java Spring 2.0 学习
- java google spring
- java,spring,hibernate,一个都不能少
- JAVA 培训题库-Spring
- JAVA 培训题库-Spring
- java Spring定时器配置
- spring ContextLoaderListener.java
- java spring 事务配置
- java Spring邮件开发
- Java - Struts - Spring - Hibernate
- 在Winodws下修复安装Postgresql
- 遍历文件夹下得所有文件并打印
- 2011.11.2 poj1258 Agri-Net 解题报告
- 手动安装 PostgreSQL
- 浅谈optimizer_mode优化器模式
- java fup spring
- SCORM和互联网教育
- mount clntudp_create : RPC Program not registered
- android Fragments (Android官方文档中文版)
- Linux下动态加载库
- 商城变伤城?淘宝新规下中关村商家百态
- JDK中的URLConnection参数详解
- JavaScript实现页面跳转的几种方式
- C++实现的委托机制(三)