扩展Struts框架的FilterDispatcher是一个好习惯吗?

时间:2011-05-29 14:23:22

标签: java struts2 servlet-filters

我正在尝试将Hibernate与Struts一起使用。如果我扩展FilterDispacther来调用Hibernate Utility类会不会是一个很好的实践?

任何人有任何意见?我想用这种方法讨论利弊。

3 个答案:

答案 0 :(得分:1)

听起来我希望功能类似于Spring的OpenSessionInViewInterceptor。如果是的话,另一个框架已经做过这样的事实表明这是一个很好的做法。

答案 1 :(得分:1)

不要延长FilterDispatcher

正如duffymo所指出的,如果你需要为当前请求设置和拆除Hibernate会话,你应该使用一个拦截器。您也可以使用他链接的OpenSessionInViewInterceptor,或者如果您不使用Spring,则可以create your own

答案 2 :(得分:0)

重点通常是您不希望将过滤器映射到您的所有请求 - 例如,您不需要某些页面的事务 - FilterDispatcher的api文档说明

  

重要信息:此过滤器必须映射到所有请求。除非您确切知道自己在做什么,否则请始终映射到此URL模式:/ *

所以FilterDispatcher全有或全无。这告诉旧的过滤器是视图模式中打开会话的更好选择。