`

用户登录过滤例子

 
阅读更多
用过滤器判断用户是否登录(2010-03-15 09:28:10)转载▼标签: filter杂谈 分类: java 
  
  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; 
  
  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里取的用户名信息 
          String   username   =   (String)   session.getAttribute("username"); 
          
          //判断如果没有取到用户信息,就跳转到登陆页面 
          if   (username   ==   null   ||   "".equals(username))   { 
              //跳转到登陆页面 
              res.sendRedirect("http://"+req.getHeader("Host")+"/login.jsp"); 
          } 
          else   { 
              //已经登陆,继续此次请求 
              chain.doFilter(request,response); 
          } 
      } 
  
      public   void   destroy()   { 
      } 
  } 
  
  
  下面配置这个过滤器 
  然后在web.xml里配置那些JSP文件需要登陆权限验证: 
  
  1.如果是某个具体的JSP文件(如a.jsp)需要登陆验证 
  <web-app> 
      ... 
      <filter> 
          <filter-name>right</filter-name> 
          <filter-class>com.taihuatalk.taihua.common.common.RightFilter</filter-class> 
      </filter> 
  
      <filter-mapping> 
          <filter-name>right</filter-name> 
          <url-pattern>/a.jsp</url-pattern> 
      </filter-mapping> 
      ... 
  </web-app> 
  
  2.如果是某一个目录(如a/目录)整个目录下的文件都需要登陆验证: 
  <web-app> 
      ... 
      <filter> 
          <filter-name>right</filter-name> 
          <filter-class>com.taihuatalk.taihua.common.common.RightFilter</filter-class> 
      </filter> 
  
      <filter-mapping> 
          <filter-name>right</filter-name> 
          <url-pattern>/a/*</url-pattern> 
      </filter-mapping> 
      ... 
  </web-app> 
分享到:
评论

相关推荐

    大数据推荐算法之基于用户协同过滤推荐实例

    大数据推荐算法之基于用户协同过滤推荐实例usercf,python版,用movielens数据作例子

    过滤器的一个登录demo

    通常在一个网站中,用户想要访问一些信息,需要用户是我们网站中... 因此在本次实战中,就要求当用户访问我们的主页面的时候,需要用过滤器验证一下其是否登录过,要是其登陆过就能直接访问,否则跳转到登录界面中去。

    过滤器--控制不同权限用户访问不同文件夹代码.rar

    过滤器,控制不同权限用户访问不同的文件夹,包含所需全部代码的一个比较简单的例子。过滤器--控制不同权限用户访问不同文件夹代码.rar

    透明底层文件过滤驱动加密技术.rar

    明加密技术是近年来针对企业文件保密需求应运而生的一种文件加密技术。应用透明加密技术,用户打开或编辑未加密的指定后缀文件时会自动加密;打开加密了的指定后缀文件时不需要输入密码会自动解密。

    新文件过滤接口程序员指南

    以前的文件系统过滤基于一个例子sfilter.使用IRP和设备对象进行过滤。我们现在称之为“旧过滤模型” 新的架构中一个关键的组件其实是一个旧过滤模型的文件系统过滤驱动,被称为“过滤管理器(Filter Manger)”.在...

    filter过滤器流程及中文乱码解决和客户端IP地址控制

    本教程中以实际例子介绍了过滤器的运行方式,以JSP开发中常见的中文乱码过滤器和限抽客户机IP访问的二个例子,本教程中代码部分转载,都经过本人修改了其中错误,加了详细注释,保证可以正常运行,希望对大家有所帮助

    spi网络数据包过滤程序

    用户态防火墙的框架,来自Windows防火墙与网络封包截获技术中的PacketCapture例子

    基于微过滤器Minifilter的MiniSpy源码文件过滤驱动

    基于文件过滤驱动中minifilter过滤驱动框架开发,可以记录文件所有的操作,保存创建、重命名等,监控所有的I/O操作,包括驱动程序和用户端应用程序源码,对文件系统过滤有很大参考价值。

    spring+shiro+ehcache例子

    登录名为任意用户:可以验证mycache的缓存。 缓存的验证都是观察控制台的输出信息 此项目有shiro验证码的实现,更改用户userState状态可以实现用户锁定,密码次数过多未写(异常类型为ExcessiveAttemptsException...

    MySQL数据的过滤和排序,使用Python语言和MySQL连接库示例代码

    使用SELECT语句,我们通过WHERE子句和LIKE运算符对名字进行过滤,并使用ORDER BY子句对结果进行排序。在这个例子中,我们使用%Doe%作为通配符进行模糊匹配。 查询名为users的表中名字中包含"Doe"的用户数据,并按照...

    java源码推荐-java-mysql-asdfe:javamysql基于协同过滤的商品推荐系统

    在本项目中采用的是基于用户的协同过滤的推荐算法来实现商品的推荐并在前台页面进行展示,我将会使用余弦相似度的度量方法来计算用户与用户之间相似性,最终将相似度较高的用户浏览的商品推荐给用户。 项目目标 商品...

    MVC经典实例

    非常经典的MVC项目,实现Autofac隐式依赖注入,构造函数直接获取services对象实例,经典弹框调用,多按钮提交, (MultiButton)多按钮提交多方法介绍,用户权限控制分配到单个action,登录无需要每次都现实验证,在...

    C#.net_经典编程例子400个

    83 实例069 在ListView控件中绘制底纹 84 实例070 在列表视图中拖动视图项 85 实例071 用ListView控件选取整行数据 88 实例072 用ListView控件开发登录界面 89 2.8 TreeView控件应用 91...

    Spark大型项目实战:电商用户行为分析大数据平台开发实战

    1、用户访问session分析,该模块主要是对用户访问session进行统计分析.包括session的聚合指标计算、 按时间比例随机抽取session、获取每天点击、下单和购买排名前10的品类、并获取top10品类的点击量排名前10的session...

    Android例子源码ListView字母排序带过滤搜索

    Android例子源码ListView字母排序带过滤搜索是一个基于ListView的A-Z字母排序索引的例子源码,这个例子包括了一个过滤搜索功能,并且可以中英文混搜,类似于微信的联系人搜索界面。 

    简单的python协同过滤程序实例代码

    关于协同过滤的一个最经典的例子就是看电影,有时候不知道哪一部电影是我们喜欢的或者评分比较高的,那么通常的做法就是问问周围的朋友,看看最近有什么好的电影推荐。在问的时候,都习惯于问跟自己口味差不多的朋友...

    lucene例子

    Lucene 是一个开源、高度可扩展的搜索引擎库,可以从 Apache Software Foundation ...允许用户使用定制排序、过滤和查询表达式解析扩展搜索行为。 使用基于文件的锁定机制保护并发索引修改。 允许同时搜索和编制索引。

    微服务的登录校验(gateway过滤器or拦截器实现)

    问题来源 在做找房微服务的时候,一般只有登录的用户能够预约房源操作,或者修改资料等密码操作,管理员也需要登录的情况下才能对房源进行...例子:如果鉴权、登录判断逻辑或者接口方法发生改变,那么一套系统中很多

    大数据-推荐引擎的算法原理介绍视频

    劣势:可能陷入“过滤泡沫”,即只推荐用户已经喜欢的内容,导致用户错过其他可能感兴趣的新内容。 例子:一个音乐流媒体平台可能会根据用户过去的听歌记录,推荐与其音乐品味相似的歌曲。 基于用户的协同过滤: ...

    django rest framework 数据的查找、过滤、排序的示例

    接下来我们将以实际的例子进行介绍。 示例代码github地址: https://github.com/jinjidejuren/drf_learn 例如cmdb系统,作为资产管理系统常常需要对数据进行过滤或查找,获取期望的信息。 实现model 1.在这个示例...

Global site tag (gtag.js) - Google Analytics