java过滤器

RightFilter.class

package edu.qdgxy.util;

import javax.servlet.Filter;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.FilterChain;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;

import edu.qdgxy.model.Admin;

public class RightFilter implements Filter {
	public void init(FilterConfig filterConfig) throws ServletException {
	}

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		HttpServletRequest req = (HttpServletRequest) request;
		HttpServletResponse res = (HttpServletResponse) response;

		HttpSession session = req.getSession(true);

		// 从session里取的用户名信息
		Admin admin = (Admin) session.getAttribute("admin");

		// 判断如果没有取到用户信息,就跳转到登陆页面
		if (admin == null) {
			// 跳转到登陆页面
			res.sendRedirect("http://" + req.getHeader("Host") + "SalaryMS/admin_login.jsp");
		} else {
			// 已经登陆,继续此次请求
			chain.doFilter(request, response);
		}
	}

	public void destroy() {
	}
}

然后再web.xml中配置该过滤器

      <filter>  
          <filter-name>right</filter-name>  
          <filter-class>edu.qdgxy.util.RightFilter</filter-class>  
      </filter>  
   
      <filter-mapping>  
          <filter-name>right</filter-name>  
          <!-- 要过滤的文件夹 -->
          <url-pattern>/pages/back/*</url-pattern>  
      </filter-mapping> 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 5.2.3 十字链表

    十字链表是有向图的一种链式存储结构。在十字链表中,对应于有向图中的每条弧有一个结点,对应于每个顶点也有一个结点,这些结点的结构如下:

    week
  • eclipse使用jetty容器

    Base directory:${project_loc:push_management}

    week
  • Python爬虫七麦APP榜单

    week
  • Servlet三:真正开发中的Servlet

    在实际的开发中,我们几乎不需要使用到init和destory,我们只用到service,所以官方帮我们最后优化出了HttpServlet,我们开发项目时直接去继...

    乐心湖
  • filter控制url访问

    在做B/S开发的时候,安全性是必须要考虑的问题。其中有一个问题就是url的访问控制,具体来说就是你不经过登录页面登录那么你就不能访问后面的管理页面,或者是会员进...

    the5fire
  • 使用自定义模板为Myeclipse添加新建Filter的功能

    第一步:单击windowpreference菜单项,在打开的窗口中,依次展开Java、Editor、Templates列表项,然后在打开的Templates面...

    Erwin
  • JSP中的Servlet及Filter

    asp.net中,如果开发人员想自己处理http请求响应,可以利用HttpHandler来满足这一要求;类似的,如果要拦截所有http请求,可以使用HttpMo...

    菩提树下的杨过
  • (数据科学学习手札80)用Python编写小工具下载OSM路网数据

      我们平时在数据可视化或空间数据分析的过程中经常会需要某个地区的道路网络及节点数据,而OpenStreetMap就是一个很好的数据来源(譬如图1柏林路网):

    Feffery
  • 豪赌 ARM 梦碎:63 岁孙正义的「花甲历险记」

    内容概要:近期关于软银卖 ARM 还债的消息被各大媒体争相报道,尤其在最近传出 NVIDIA 可能将以 400 亿英镑的价格收购 ARM,引发业界一片哗然。孙正...

    HyperAI超神经
  • HTAP 会成为数据库的未来吗?

    在访问量和数据量急剧膨胀的今天,关系型数据库已经难以支撑庞大复杂的系统规模。在此背景下,备受关注的数据库新理念 HTAP,会是一条“正确”的路吗?

    PingCAP

扫码关注云+社区

领取腾讯云代金券