Spring 与 SpringMVC 之间的父子容器关系

1、父子容器关系:

      子容器可以调用父容器的对象,但是不能直接调用父容器的属性,可以使用父容器的getter方法调用该属性;

      父容器不能调用子容器的对象,也不能直接调用子容器的属性。

2、Spring 与 SpringMVC关系

      

    如上图所示:

    Spring 是父容器,SpringMVC是子容器。

    Spring 容器中有mapper 代理对象、service对象,

    SpringMVC容器中有controller 对象。

    SpringMVC 的配置扫描文件中:

    <!-- 配置包扫描器 -->    

    <context:component-scan base-package="com.XXX.controller"></context:component-scan>

     只需要扫描@controller注解的对象,即可。因为SpringMVC作为子容器,可以访问Spring父容器的Mapper代理对象和Service对象。

      如果将SpringMVC包的扫描器扩大,那么SpringMVC也会扫描Mapper代理对象和Service对象,这样SpringMVC会“就近选择”自己容器的对象,而不会调用父容器的对象。Spring容器会对某些对象进行AOP 或者事物操作的配置,此时子容器中扫描得到的对象失去这些特性。

      因此,配置SpringMVC扫描器时,要扫描到controller即可。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值