栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

所有的Spring Framework bean都被复制,以上下文加倍的形式(servlet + ContextLoaderListener)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

所有的Spring Framework bean都被复制,以上下文加倍的形式(servlet + ContextLoaderListener)

如果您使用与Spring相关的servlet过滤器,并且还使用mvc控制器,那么您将同时需要:

  • ContextLoaderListener与
  • DispatcherServlet-spring-configuration

两者都创建自己的servlet上下文。ContextLoaderListener创建 父上下文
(有时称为内部上下文)。而DispatcherServlet的创建 子上下文
(父上下文)(有时也称为外上下文)。子上下文的Bean可以访问父上下文的Bean,但反之则不能。

在不太简单的Web应用程序中,您需要两个上下文,因为有许多servlet过滤器需要一个已经创建的spring上下文。另一方面,所有控制器内容都需要ServletContext,而这仅是由Dispatcher
Servlet创建的。

另一点是,您不应该将每个bean都创建两次(有时这没问题,而有时则是)。因此,您需要具有两种弹簧配置,一种用于内部环境,一种用于其他环境。而且,您需要为每个bean决定它是属于内部上下文还是属于外部上下文。

经验法则是:将所有内容放入内部上下文中,除非需要Servlet上下文或与Web前端紧密相关的内容,例如MVC-Controllers,Tiles配置等。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/466430.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号