早教吧 育儿知识 作业答案 考试题库 百科 知识分享

java过滤器怎么不过滤一个页面里包含的多个请求意思就是:我要访问的一个页面里包含了好几个action,我的过滤器会过滤jsp、html和action,现在我希望我的过滤器只过滤一次,简单描述就是用户

题目详情
java过滤器怎么不过滤一个页面里包含的多个请求
意思就是:我要访问的一个页面里包含了好几个action,我的过滤器会过滤jsp、html和action,现在我希望我的过滤器只过滤一次,简单描述就是用户点击一下,过滤器执行一次,
我的过滤器是为了用户访问页面进行抽奖的,用了2楼的方法的话那么就不能实现浏览页面抽奖了
▼优质解答
答案和解析
abstract public class FilterPerRequest implements Filter {
private static final Boolean FILTERED = true;
private ThreadLocal statusLocal = new ThreadLocal();
@Override
final public void doFilter(ServletRequest req,ServletResponse resp,
FilterChain chain) throws IOException,ServletException {
if (hasNotFiltering()) {
doFilterAndDispatchRequest(req,resp,chain);
return;
}
//dispatch request only
chain.doFilter(req,resp);
}
private boolean hasNotFiltering() {
Boolean status = statusLocal.get();
if (status == null) {
return true;
}
return false;
}
private void doFilterAndDispatchRequest(ServletRequest req,
ServletResponse resp,FilterChain chain) throws IOException,
ServletException {
try {
doFilterPerRequest(req,resp);
setFiltered();
chain.doFilter(req,resp);
} finally {
cleanFilterStatus();
}
}
abstract protected void doFilterPerRequest(ServletRequest req,
ServletResponse resp);
private void setFiltered() {
statusLocal.set(FILTERED);
}
private void cleanFilterStatus() {
statusLocal.set(null);
}
}
那要就情况而定了.
如果是request范围内的话,就可以使用上面的过滤器.
如果是session范围内的话,就需要在session内存储一个标志变量,方式和request差不多.
如果是限制用户操作的话,那就必须将用户操作持久化.
由于你的问题不明确,我也不好多说...
看了 java过滤器怎么不过滤一个...的网友还看了以下:

2010东城初三二模化学23题D选项为什么不对(详细解释,D中CuO和HCl反应生成CuCl2溶于  2020-05-17 …

急,自制葡萄酒第一次过滤前把瓶盖揭开了一下,但迅速把盖上了,这样酒会不会坏?还有就是用不用在什么时  2020-06-27 …

鱼缸过滤越大越好我一个1206060的缸,里面养大鱼,而且密度不小,扣除底砂等水体大概350~400  2020-11-04 …

一个化工原理题在恒压下对某种悬浮液进行过滤,过滤20MIN,得滤液8L再过滤20MIN,又得过滤5L  2020-11-20 …

什么是“三级过滤”?三级过滤是指化验合格的润滑油在注入到润滑部位之前,为了清除油品中的杂质,一般要经  2020-11-20 …

滤纸的二次使用滤纸过滤一种溶液后,过一段时间,再过滤同种溶液,那效果会怎样?广泛的说就是滤纸二次使用  2020-12-02 …

某同学在实验室对粗盐进行溶解、过滤、蒸发的实验操作.(1)经过两次过滤后,滤液依然浑浊.经检查,发现  2020-12-02 …

谁能跟我讲解一下滤纸,在题目中看到这一句话“一个圆形的滤纸进过2次折叠后,当滤纸重叠部分为3层时,且  2020-12-02 …

明矾是否能用做工业去油剂我们厂废水中机油含量较高不知道可不可以用明矾过滤下使其降低.还有就是如果能过  2020-12-13 …

上滤过滤器打不出氧气不知道为什么过滤器里面打不出起泡啊,有水流冲出来,但是就是没有气泡啊  2020-12-14 …