问题描述
我刚刚做了一个小小的测试。可是测试发现OncePerRequestFilter与Filter都只执行一次,,,并没有像想象中的那样的效果,,麻烦各位大虾帮我看看。。。。我在下面会上传我做的小例子。。。。如果大家有发现问题。可以回复我,也可以将修改后的小例子发我邮箱onlyboor@163.com 问题补充:zhanghongliang_cyj 写道
解决方案
引用其实我想要的效果是,,OncePerRequestFilter执行一次Filter执行多次。。。 那就得定义多个Filter了。
解决方案二:
你应该在web.xml中把普通的filter配置在OncePerRequestFilter前面。
解决方案三:
filter只要满足url-pattern的请求都会拦截到,进入到doFilter方法.--如果是说一个会话/请求只执行一次filter的逻辑,就需要在Once执行完逻辑后,在会话上设置相应的标识...再去进入的时候,判断是否有标识.如果有,则已经执行过.直接chain...想一下用户登录的可能判断.应该有帮助.
解决方案四:
恩,是执行一次。你做的操作 不是 在执行 action完要执行其他代码吗?filter就是这样的操作,进去 出来
解决方案五:
是执行一次。System.out.println("执行了Filter");chain.doFilter(req, res);System.out.println("--filter 执行结束--");你应该这样做
时间: 2024-10-02 03:22:42