博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BeanFactory工厂
阅读量:7097 次
发布时间:2019-06-28

本文共 1200 字,大约阅读时间需要 4 分钟。

Core模块主要的功能是实现了反向控制(Inversion of Control)与依赖注入(Denpendency Injection)、Bean配置以及加载。

Beans为Spring里的各种对象,一般要配置在Spring的配置文件中;BeanFactory为创建Beans的factory,Spring通过BeanFactory加载各种Beans;BeanDefinition为Bean在配置中的定义,一般要定义id与class;ApplicationContext代表配置文件。

 

BeanFactory工厂

BeanFactory是实例化、管理众多的容器。

BeanFactory可用接口org.springframework.beans.factory.BeanFactory表示。

BeanFactory最常见的实现类为XmlBeanFactory。XmlBeanFactory可以加载xml的配置文件。

实例化BeanFactory

  Web程序加载时候自动实例化BeanFactory,并加载所有Beans,并将Bean设置到各个组件资源中。

  java桌面程序中,需要从BeanFactory获取Bean,所以需要实例化BeanFactory。

例如:

ClassPathResource res=new ClassPathResource("applicationContext.xml");//获取配置资源,一般使用的是相对路径XmlBeanFactory beanFactory=new XmlBeanFactory(res);//实例化工厂对象IService hello=(IService) factory.getBean("service");//从工厂中获取对象...//其他代码略Beanfactory.destorySingletons();//销毁实例化的工厂对象

加载多个配置文件

public static void main(String[] args) {        ClassPathXmlApplicationContext appContext=new ClassPathXmlApplicationContext(        new String[]{"com/test/applicationContext.xml","com/test/applicationContext_2.xml"}                );        BeanFactory factory=(BeanFactory)appContext;        Dog d=(Dog) factory.getBean("dog");        System.out.println(d.getName()+"\t"+d.getAge());    }

 

转载地址:http://unhql.baihongyu.com/

你可能感兴趣的文章
DS实验题 Missile
查看>>
微信上 网页图片点击全屏放大
查看>>
jquery获取css颜色值返回RGB应用
查看>>
(void __user *)arg 中__user的作用
查看>>
Redefine:Change in the Changing World
查看>>
POJ 3436 ACM Computer Factory 最大流
查看>>
atitit。全局变量的设计与实现 java php的异同
查看>>
自己定义控件-画板,橡皮擦,刮刮乐
查看>>
spark 按照key 分组 然后统计每个key对应的最大、最小、平均值思路——使用groupby,或者reduceby...
查看>>
顺序表示的线性表——顺序表
查看>>
categorys源码
查看>>
C与asm链接和内嵌
查看>>
349元我们应该有什么样的期待-原道N12豪华版 RK2906入手初体验
查看>>
简单PHP留言板之三 —— 头部文件以 及单 独设置PHP文件编码
查看>>
Android中Context
查看>>
WordPress超级基本教程(转)
查看>>
Python基础 3----文件和网络
查看>>
模块的耦合和内聚
查看>>
对话框
查看>>
迁移SQL SERVER 数据库实例
查看>>