servlet拦截器
2024-10-07 01:10:51
servlet拦截未登录的用户请求
java代码:
package com.gavin.filter; import java.io.IOException; import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; public class LoginFilter implements Filter { public void destroy() {
// TODO Auto-generated method stub } public void doFilter(ServletRequest req, ServletResponse resp,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletResponse response = (HttpServletResponse) resp;
HttpServletRequest request = (HttpServletRequest) req;
HttpSession session = request.getSession(true);
String username = (String) session.getAttribute("username");//
String url = request.getRequestURI();
if (username == null || username.equals("")) {
// 判断获取的路径不为空且不是访问登录页面或执行登录操作时跳转
if (url != null && !url.equals("") && (url.indexOf("Login") < 0 && url.indexOf("login") < 0)) {
response.sendRedirect("login.jsp");
return;
}
}
// 已通过验证,用户访问继续
chain.doFilter(req, resp);
} public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub } }
web.xml配置
<filter>
<filter-name>loginFilter</filter-name>
<filter-class>com.gavin.filter.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>loginFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
最新文章
- MapReduce实现手机上网流量分析(业务逻辑)
- HDU2255-奔小康赚大钱-二分图最大权值匹配-KM算法
- 小试牛刀3之JavaScript基础题
- ckeditor的详细配置
- ajax中网页传输(三)XML——下拉列表显示练习
- JavaEE的13种核心技术
- jquery animate() 防止多次执行
- 关于iptables的u32匹配
- hdu 4542 数论 + 约数个数相关 腾讯编程马拉松复赛
- js模版引擎开发实战以及对eval函数的改进
- 【Android使用Shape绘制虚线,在4.0以上的手机显示实线】解决方式
- Python作业之工资管理
- torchvision 作用
- Linux 的进程间通信:管道
- POJ 1904 King&#39;s Quest (强连通分量+完美匹配)
- P1993 小K的农场
- FAL_CLIENT和FAL_SERVER参数详解
- 高可用OpenStack(Queen版)集群-3.高可用配置(pacemaker&;haproxy)
- 项目bug的修正
- JNI 详细使用 基础【步骤】