package com.wake.util;
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.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.wake.bean.AdminUser;
/**
* @author Administrator
*
*/
public class PopedomControl extends HttpServlet implements Filter
{
private FilterConfig filterConfig;
private static final long serialVersionUID = -4275105240038370264L;
/*
* (非 Javadoc )
*/
public void init(FilterConfig arg0) throws ServletException
{
}
/*
* (非 Javadoc )
*/
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain)
{
HttpServletRequest servletRequest = (HttpServletRequest) request;
HttpServletResponse servletResponse = (HttpServletResponse) response;
HttpSession session = servletRequest.getSession();
// 获取当前页面文件名
String url = servletRequest.getRequestURI();
url = url.substring(url.lastIndexOf("/") + 1, url.length());
try
{
// 排除后台不作权限控制的页面名
String exclude= "adminlogin.action,login.jsp,Message.jsp,loginout.jsp";
if(exclude.indexOf(url)==-1)
{
// 获取网站访问根目录
String accessPath = servletRequest.getContextPath();
// 用当前页面文件名与用户权限字符比较
AdminUser adminuser = (AdminUser) session.getAttribute("auser");
if (adminuser == null)
{
servletResponse.sendRedirect(accessPath +
"/admin/login.jsp");
}
else if(adminuser.getUserPopedom().indexOf(url)==-1)
{
servletResponse.sendRedirect(accessPath +
"/admin/Message.jsp");
}
}
}
catch (Exception sx)
{
sx.printStackTrace();
}
try
{
filterChain.doFilter(request, response);
}
catch (ServletException sx)
{
filterConfig.getServletContext().log(sx.getMessage());
}
catch (IOException iox)
{
filterConfig.getServletContext().log(iox.getMessage());
}
}
public void destroy()
{
}
}
分享到:
相关推荐
NULL 博文链接:https://highfly-s.iteye.com/blog/1157564
jsp filter 过滤器判断用户是否登录的一个demo,可按照里面说明来完成
NULL 博文链接:https://zywang.iteye.com/blog/407019
java web 购物车,字符过滤器,权限过滤器,详细备注,适合初学者,servlet ,jsp,有数据库,简单易懂,
servlet,filter,过滤器技术servlet,filter,过滤器技术
这一个过程就是过滤器要做的:你想访问这个网站,但是要把你过滤一遍,看你是否有相应的权限,再做出相应的响应。 因此在本次实战中,就要求当用户访问我们的主页面的时候,需要用过滤器验证一下其是否登录过,...
过滤器实现分目录权限控制 servlet+jsp 没加数据库
本教程中以实际例子介绍了过滤器的运行方式,以JSP开发中常见的中文乱码过滤器和限抽客户机IP访问的二个例子,本教程中代码部分转载,都经过本人修改了其中错误,加了详细注释,保证可以正常运行,希望对大家有所帮助
Servlet过滤器大全,各种详细使用的代码! 一、字符编码的过滤器 二、使浏览器不缓存页面的过滤器 三、检测用户是否登陆的过滤器 四、资源保护过滤器 五 利用Filter限制用户浏览权限
JSP 演示代码 技术:JSP Servlet JavaBean Filter 实现:过滤器实现权限登录功能。
在学习完javase部分,在进入web编程的时候,有人也许会建议去学习jsp,但是我建议还是先学习servlet,因为jsp的本质就是servlet,如果能很好的了解servlet,我想对你以后学习java web编程会有很大的帮助的...
一个简单的基于Java的考试系统,MySql数据库,有单选、多选、判断、问答、编程题型
项目基于jdk1.8整合了springboot+mvc+mybatis(通用mapper)+druid+jsp+bootstrap等技术,springboot+Listener(监听器),Filter(过滤器),Interceptor(拦截器),Servlet,springmvc静态资源,文件上传下载,多数据源切换,缓存...
:对用户访问权限的控制是B...器的分析研究,给出了用户权限判断和控制的方法,并采用4层架构技术设计和实现了一个权限管理系统,有效地 实现了用户对系统的安全访问.此系统具有可维护性、可扩充性和可移植性等特性.
若用户没有登录成功,而直接访问主界面,则被过滤器过滤到index.jsp,若登录成功,验证身份后,才有权限访问产品和其他功能。 例如:如果没登录成功,则被过滤到index.jsp 二、技术介绍: 主要框架技术:jsp+...
JSP课设,实现的购物商城的大部分功能. 包含:源代码,sql文件,需求分析,详细分析文档 1.游客,用户,管理员,不同权限的管理 2.商品,购物车,订单的增删改查管理 3.用户,管理员的增删改查管理 4.管理员增删改查商品 5.分页...
项目基于jdk1.8整合了springboot+mvc+mybatis(通用mapper)+druid+jsp+bootstrap等技术,springboot+Listener(监听器),Filter(过滤器),Interceptor(拦截器),Servlet,springmvc静态资源,文件上传下载,多数据源切换,缓存...
项目基于jdk1.8整合了springboot+mvc+mybatis(通用mapper)+druid+jsp+bootstrap等技术,springboot+Listener(监听器),Filter(过滤器),Interceptor(拦截器),Servlet,springmvc静态资源,文件上传下载,多数据源切换,缓存...
项目基于jdk1.8整合了springboot+mvc+mybatis(通用mapper)+druid+jsp+bootstrap等技术,springboot+Listener(监听器),Filter(过滤器),Interceptor(拦截器),Servlet,springmvc静态资源,文件上传下载,多数据源切换,缓存...
④ 使用过滤器对权限进行验证; ⑤ 能够对文件的局部内容进行验证; ⑥ 掌握安全验证码的基本实现方式; ⑦ 通过异常处理增强安全性。 二、主要内容: ① 通过修改前面的登录功能,分别对管理员和普通用户的登录进行...