为了账号安全,请及时绑定邮箱和手机立即绑定

Java Web开发技术应用——过滤器

难度初级
时长 1小时40分
学习人数
综合评分9.53
339人评价 查看评价
9.8 内容实用
9.5 简洁易懂
9.3 逻辑清晰
1.不同类型的过滤器只能被对应类型的请求所触发。过滤器默认为request类型,而浏览器发送请求也是request类型的。同理,req.getRequestDispatcher().forward()、include()或forward、include的jsp标签发送的请求分别是forward、include类型的请求,只能触发对应类型的过滤器(即执行doFilter方法)
2.重定向:相当于浏览器发送了两次不同的请求,所以浏览器的URL会改变,而且是request类型的请求。
转向:是服务器内部自己发送的新请求,浏览器并不知道这个新请求,故URL不变
可以这样理解,,去一个网页可以通过 request 请求和 请求转发。。。通过过滤器的时候他会判断你是通过request还是请求转发觉得要不要让你走过滤器。(过滤器是什么过滤器,也就是这节课讲的过滤器的分类)
不了解重定向和转发确实有点听不懂
循环几次浏览器就不循环了
亲测用火狐浏览器可以跳到error.jsp,用eclipse自带的和IE浏览器不行
@WebFilter(filterName = "LoginFilter",
value = "/*",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet"),
@WebInitParam(name = "charset", value = "UTF-8")

})
本课在servlet3.0 中使用注解的方式配置是:
@WebFilter(filterName = "LoginFilter",
value = "/success.jsp",
initParams = {
@WebInitParam(name = "noLoginPaths", value = "login.jsp;fail.jsp;LoginServlet")
})
new String(username.getBytes("ISO-8859-1"),"UTF-8"); //改变字符串的编码
request.setCharacterEncoding("UTF-8");
也可以直接在过滤器中设置 charset = "UTF-8";
老师讲的很好啊,1.5倍速听着爽歪歪233
过滤器的生命周期和Servlet的生命周期类似,都是起始于服务器启动,终于服务器关闭。
过滤器的生命周期
1. 实例化:启动服务器时加载过滤器的实例
2. 初始化:调用init()方法来初始化实例
3. 执行过滤:doFilter
4. 销毁:服务器关闭时调用destory()方法进行销毁
过滤器和拦截器是不同的,过滤器基于servlet,拦截器基于Spring MVC。可以看一下这篇博客。http://blog.csdn.net/chenleixing/article/details/44573495
生命周期:实例化 web.xml 初始化 过滤 销毁
Thanks!
基础太渣,完全听不懂
@Anna112, JAVA遇见HTML——JSP篇 讲过转发和重定向内容
课程须知
童鞋们,过滤器是Java Web开发的内容。学习前需要掌握Java基础知识、并熟悉JSP和Servlet。如未学习上述知识,可移步网站相关课程。
老师告诉你能学到什么?
通过本课程的学习,你可以了解过滤器的基础知识,并可以自己动手编写过滤器。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消