spring父子容器spring总的上下文容器有父子之分,父容器和子容器。 ** 父容器对子容器可见,子容器对父容器不可见 ** 。对于传统的spring mvc来说,spring mvc容器为子容器,也就是说ServletDispatch
spring父子容器
spring总的上下文容器有父子之分,父容器和子容器。 ** 父容器对子容器可见,子容器对父容器不可见 ** 。
对于传统的spring mvc来说,spring mvc容器为子容器,也就是说ServletDispatcher对应的容器为子容器,而WEB.xml中通过ConextLoaderListener的contextConfigLocation属性配置的为父容器。
父子容器的使用场景
父子容器的主要用途是上下文隔离。考虑以下一种场景。
project-api需要对project-service里的某些方法进行decorate,进行装饰,比如给CustomerService进行装饰。装饰后的类为CachedCustomerService。于是,现在project-api里面包含两个CustomerService,一个是来自project-service的CustomerService,另一个是CachedCustomerService。这个时候,如果project-api工程所有的配置文件都通过一个上下文进行加载,势必出现问题(通常的做法是用import标签全部给import进来)。因为,project里的PayService里通过@Resource标准注入了CustomerService,类似如下
@Serivcepublic class PayService{@Resourceprivate CustomerService cusService;}
--结束END--
本文标题: spring的父子容器及配置详解
本文链接: https://lsjlt.com/news/219839.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0