doFilter如何使用
本文转自于: http://blog.sina.com.cn/s/blog_5bba80460100dlsu.html
我来给你简单的说一下吧:)
首先要明确。Filter是JSP2.0里面的东西 ,顾名思义,也就是过滤器的意思
和你说说如何用吧。要用Filter就得在web.xml中配置
例:
//配置方法和配置普通的Servlet一样的哦
<filter>
<filter-name>PrivFilter</filter-name>
<filter-class>com.myPriv.filter.PrivFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PrivFilter</filter-name>
<url-pattern>/resource/*</url-pattern>
</filter-mapping>
//com.myPriv.filter.PrivFilter是这个过滤器所在的位置。当然这个过滤器必须实现接口javax.servlet.Filter。
然后就可以在过滤器这个接口方法中增加过滤条件了
public void doFilter(ServletRequset request, ServletResponse response,FilterChain chain)
thows ServletException, IOException{
}
然后你可以把过滤条件写出来,写在doFilter方法里面
我这里写一个简单的例子:
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
HttpSession session=request.getSession();
ServletContext application=session.getServletContext();
if(session.getAttribute("userSession")==null)
{
response.sendRedirect("error/priv_error.jsp");
return;
}
else
{
chain.doFilter(request, response);
}
}
在上面的这个过滤方法中,如果session.getAttribute("userSession")==null)那就跳转到错误页面。如果不为空,则继续
所以
chain.doFilter(request, response);的意思就是跳转到下个页面,
明白了吧?
如果还有不明白。,可以留下你的问题
------------------------
还有忘了回答你的问题 了。java会在处理每一个Servlet时都走一次Filter的。所以你不必担心你的过滤不起作用了
而且chain.doFilter(request.response);
是必须的。没有他,程序就不会继续了:)他是让你的request和response继续运行哦
--------------------------------
这个你就可接写/*
好了。它是说对哪些范围起作里这个过滤器
doFilter如何使用相关推荐
- Filter若不写chain.doFilter(request,response)原Servlet路径代码不会被执行
为什么80%的码农都做不了架构师?>>> Filter如果不写chain.dofilter(request,response) 那么对应的Servlet URL 是不会执行的. ...
- java dochain,Java filter中的chain.doFilter详解
转载: 一.chain.doFilter作用 1.一般filter都是一个链,web.xml 里面配置了几个就有几个.一个一个的连在一起 request -> filter1 -> fil ...
- dofilter在java中_在Filter的doFilter中进行重定向 出现异常
我在 filter的 dofilter方法里 重定向到一个servlet 出现java.lang.IllegalStateException: Cannot create a session afte ...
- chain.doFilter(request,response)含义
过滤器的生命周期一般都要经过下面三个阶段: 初始化 当容器第一次加载该过滤器时,init() 方法将被调用.该类在这个方法中包含了一个指向 Filter Config 对象的引用.我们的过滤器实际上并 ...
- 09_Filter过滤器(访问所有资源前,首先执行自定义过滤器类的doFilter方法)_Listener监听器(监听域对象的改变)
Filter 什么是Web过滤器? 如何使用Filter过滤器? 自定义Filter类的生命周期 过滤器可以拦截哪些资源路径? 拦截方式配置:资源被访问的方式 过滤器链的默认执行顺序是什么? 如何配置 ...
- Java中的过滤器doFilter里的chain.doFilter()函数理解
关于chain.doFilter()函数在最近的使用中不是很理解,但是考虑到他是过滤器.过滤器顾名思义就是在执行某件事情的时候开始之前.开始进行处理的叫做过滤处理.一个方法,一个类就是充当过滤器的角色 ...
- 浅谈filter中的chain.doFilter(request, response)的作用
filter在web开发中可谓是神通广大,想必大家都有所了解,在这里不作赘述. 下面主要谈一谈chain.doFilter(request, response);这条语句是怎么回事,过滤器的作用就是之 ...
- Filter中chain.doFilter(req, res)的理解
在写代码中,每次看到Filter(过滤器)中 chain.doFilter(req, res):都不懂为什么要加这一句,他的作用是什么:代码下面也有: @Overridepublic void doF ...
- Filter为什么会在一次请求执行多次doFilter?
问题如下: 解决办法: 指定浏览器 1.把默认浏览器替换成指定浏览器 如果IDEA出现windows 找不到文件Chrome,请移步:https://blog.csdn.net/BlizCp/arti ...
- 过滤链FilterChain,请求与响应--chain.doFilter()代码前后
Filter程序实现了doFilter()方法,实现该方法就可实现对用户请求进行预处理,也可实现对服务器响应进行后处理--它们的分界线为是否调用了chain.doFilter(),执行该方法之前,即对 ...
最新文章
- easypoi教程_EasyPoi教程
- 阿里新框架发布!干掉Spring Cloud,换下Dubbo,微服务王者来了!
- C#和.Ne学习第五天
- 老虎Sitemap生成器 0.3
- initializeAdvisorChain
- mac下sublime text的使用
- python图像加坐标_Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例...
- 大数据之-Hadoop3.x_MapReduce_序列化案例FlowBean---大数据之hadoop3.x工作笔记0097
- 利用遗传算法求解旅行商问题
- 软件技术方案模板_携手跨越,法本信息数字化解决方案赋能企业,共建数字未来...
- 增强现实:原理算法与应用 第一章增强现实概论笔记
- linux 数据转为曲线图,Linux系统下生成TPS,ResponseTime曲线图
- ddm模型公式_绝对估值法DDM、DCF模型及RNAV简介
- sql计算表中计算机的最高分,关于SQL查询面试题,会这些基本够用了
- 掌上文件、证件、文档扫描软件
- ESD 静电标准分类
- 微型计算机存储容量2mb,在微型计算机中,存储容量为2MB是指
- 手游传奇刷元宝_战神传奇手游刷元宝方法技巧大全
- 考研:2023寒假复习及2022复试问题
- Java第十五篇:详解一元二次方程
热门文章
- matlab采集声音信号播放声音,基于Matlab的声音信号采集与分析处理
- 用计算机唱一个学猫叫,学猫叫计算机简谱 免费版
- “华为杯”研究生数学建模竞赛2020年-【华为杯】B题:降低汽油精制过程中的辛烷值损失模型(附优秀论文及python代码)
- php中locate()用法,locate指令是什么
- linux du 命令详解
- 第二节 你真假唐伯虎!Part 1
- 多表查询的分类及其查询语法
- AppExplorer0.4软件管理器的开发
- 2021年统计学和统计法基础统计师初级
- 国家秘密载体印制资质(档案数字化加工)申请、受理、审查与决定