struts2中的filterDispatcher是什么

时间:2014-07-07 12:03:15

标签: struts2

Filter Dispatcher和StrutsPrepareAndExecuteFilter的工作是什么以及在哪里使用哪个过滤器?实际上我已经使用filterdispatch创建了一个应用程序,而使用StrutsPrepareAndExecuteFilter创建了另一个应用程序,所以想知道这两者之间的差异,或者我们可以同时使用web.xml吗?

1 个答案:

答案 0 :(得分:2)

FilterDispatcher是Struts 2提供的用于处理需要由struts框架控制的所有请求的过滤器。使用此过滤器Struts 2.1.3后,不推荐使用此过滤器。作为备选StrutsPrepareAndExecuteFilterStrutsPrepareFilterStrutsExecuteFilter,可以使用这三个过滤器中的任何一个。当链中没有其他需要操作上下文信息的过滤器时,建议使用第一个过滤器,例如Sitemesh

  

Filter Dispatcher和StrutsPrepareAndExecuteFilter的工作是什么以及在哪里使用哪个过滤器?

如果您使用的是struts 2.1.3或更高版本,建议您使用新推出的过滤器而不是不推荐使用的过滤器。虽然谷歌搜索在一些博客上发现了以下几点

  1. 有很多人发布了FilterDispatcher及其部署。
  2. 新过滤器提供了一种更好的方法来启用自定义和覆盖。
  3. 让开发人员明白过滤器正在做什么过程。
  4. 使调度过程更加灵活,以支持OSGi或插件系统中的本机操作。
  5.   

    可以同时拥有两个web.xml吗?

    结果这将是混乱的,而您的应用程序甚至不会被部署。这样做就像要求两个司机同时开一辆车一样。