首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Spring bean加载模式

2012-12-28 
Spring bean加载方式在加载spring的bean的xml文件,生成spring容器。得到bean对象的几中用法。在srping中可以

Spring bean加载方式

在加载spring的bean的xml文件,生成spring容器。得到bean对象的几中用法。

在srping中可以配置一个xml文件,但是为了解耦也可以配置多个xml文件。

通过spring容器直接生成bean对象。

?

1、用ApplicationConetx上下文对象来加载application.xml文件。

?

解析一个xml文件:

比如说:

ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");

加载的是一个xml文件,通过它就可以获得bean对象了:

ContainerBean bean=(ContainerBean)ctx.getBean("/cb");获得的是ContainerBean对象。

解析多个xml文件:

比如说:ApplicationContext ctx=new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","applicationContext2.Rel"});

这里是建立了一个String数组

ClassPathXmlApplication对象指的是在该项目下的classes下去找xml的文件,生成对象。


2、用Resource加载application.xml文件,用beanFactory获得bean对象

?

这个Resource文件只能加载一个xml文件。如果该xml文件还引用了其他的xml文件

Resource resource=new ClassPathResource("applicationContext.xml");

BeanFactory ctx=new XmlBeanFactory(resource);

ContainerBean bean=(ContainerBean)ctx.getBean("/cb");

用bean工厂获得bean对象

可以加载该xml文件的系统真实路径获得resource对象

Resource resource=new FileSystemResource("E:/未来蓝图4_14连读班/Spring1.2FirstApp/classes/applicationContext.xml");

BeanFactory ctx=new XmlBeanFactory(resource);???????

ContainerBean bean=(ContainerBean)ctx.getBean("/cb");

也可以用BeanFactory的子类XmlFactory获得。用XmlFactory获得的好处是当你要执行类销毁方法的时候。可以执行ctx.destroySingletons(),但是前提是该类必须是单态的。

?

热点排行