ApplicationContext详解以及多个ApplicationContext.xml的相互引用

转自:https://www.cnblogs.com/TTTTT/p/6675557.html 

看到博主比较好的一篇文章,是我在找的资源,所以转载收藏下,仅供后面自己复习使用

如果说BeanFactory是spring的心脏,那么Application就是完整的身躯。ApplicationContext就是由BeanFactory派生出来的。

一、ApplicationContext类

 ApplicationContext的主要实现类是ClassPathXmlApplicationContext和FileSystemXmlApplicationContext,前者默认从类路径加载配置  文件,后者默认  从文件系统加载文件。

1)如果配置文件放在类路径下,直接使用ClassPathXmlApplicationContext实现类:

ApplicationContext ctx=new ClassPathXmlApplicationContext("com/techman/context/beans.xml");

这里的参数等同于:"classpath:com/techman/context/beans.xml"

2)如果配置文件在文件系统的路径下,则可以优先考虑使用FileSystemXmlApplicationContext实现类:

ApplicationContext ctx=new FileSystemXmlApplicationContext("com/techman/context/beans.xml");

这里的参数等同于:"file:com/techman/context/beans.xml".

3)如果有多个配置文件,获取ApplicationContext对象时还可以指定一组配置文件,Spring自动将多个配置文件在内存中整合成一个配置文件:

ApplicationContext ctx=new ClassPathXmlApplicationContext(new String[]{"conf/bean1.xml","conf/bean2.xml"});

或者ApplicationContext ctx=new ClassPathXmlApplicationContext("conf/bean*.xml");

二、如何配置多个applicationContext.xml

即,在启动容器的时候如何引入多个applicationContext.xml?

在web.xml中将applicationContext.xml作为当前web应用的初始化参数,多个applicationContext.xml用逗号隔开,也可以使用

    例如:

   

    或者

三、一个applicationContext.xml文件如何引用另一个applicationContext.xml文件中的bean?

在需要引用其它applicationContext.xml文件的applicationContext.xml文件中的<beans></beans>标记之间引入别人的            

applicationContext.xml,格式如下:

<beans>
    <import resource="applicationContext-hibernate.xml"/>
</beans>

(其中,<inport> 相当于Java中的导包),需要注意的是:
<import resource="applicationContext-hibernatee.xml"/>这一句要放在所有bean配置的最前面。

四、如何引用别人已经配置好了的bean呢?

例如,将另外一个人配置的commonDAO注入给自己的biz中:配置如下:

<bean id="cstServiceBiz" class="org.jb.t0821c.biz.CstServiceBiz">
    <property name="commonDAO">
         <ref bean="commonDAO"/>
    </property>
</bean>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值