过滤器验证用户登录
2015-12-13 19:38
330 查看
login.jsp
<a href="index.jsp">进入主页</a>
web.xml
<filter>
<filter-name>loginFilter</filter-name>
<filter-class>com.lyq.service.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loginFilter</filter-name>
<url-pattern>/index.jsp</url-pattern>
</filter-mapping>
loginFilter.java
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
HttpSession session = req.getSession();
if(session.getAttribute("user") == null){
res.sendRedirect("error.jsp");
}
}
注释:将ServletRequest request, ServletResponse response里的request和resp强制转换为HttpServletRequest类型的 req和HttpServletResponse类型的 res
然后绑定HttpSession类型的session
如果获取到的已绑定session的user不存在,重定向到error.jsp,实际上未绑定session到user上
error.jsp
<h1>对不起,您还没有登录!</h1>
java web 书籍P84
<a href="index.jsp">进入主页</a>
web.xml
<filter>
<filter-name>loginFilter</filter-name>
<filter-class>com.lyq.service.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loginFilter</filter-name>
<url-pattern>/index.jsp</url-pattern>
</filter-mapping>
loginFilter.java
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
HttpSession session = req.getSession();
if(session.getAttribute("user") == null){
res.sendRedirect("error.jsp");
}
}
注释:将ServletRequest request, ServletResponse response里的request和resp强制转换为HttpServletRequest类型的 req和HttpServletResponse类型的 res
然后绑定HttpSession类型的session
如果获取到的已绑定session的user不存在,重定向到error.jsp,实际上未绑定session到user上
error.jsp
<h1>对不起,您还没有登录!</h1>
java web 书籍P84
相关文章推荐
- 多路分发_demo_me
- Windows——用快捷键打开命令提示符cmd
- 密码学之RSA加密
- c语言:1000瓶水,有一瓶是有毒的,现共有10只老鼠,怎么判断毒水?
- iOS 点击空白处收回键盘的方法
- 初探nodejs创建web服务器
- 安卓在雪域注册
- 密码学之密匙交换
- json(转)
- 机器学习: 决策树(Decision Tree)
- iOS开发——Xcode好用的插件(16年12月更新)
- 信息安全系统设计基础第四次实验报告
- Node.js(转) -- 临时来说还看不懂!
- ContentValues(Java)
- 分位数回归的r语言代码
- 接下来要研究的几个点
- 关于指令、数据、程序和进程的一些思考
- 10012---JavaScript--保留关键字
- LeetCode 232:Implement Queue using Stacks
- GIT快速入门