最近在学习filter,看完理论知识之后,就特地在实际工作中的系统中去验证。

SSP系统实例如下:

1.在web.xml中寻找 filter的配置信息

  如下:

<filter>
  <filter-name>passoFilter</filter-name>
  <filter-class>com.pingan.passo.wls.client.filter.SSOClientFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>passoFilter</filter-name>
  <url-pattern>/login</url-pattern>
 </filter-mapping>
 <filter>
  <filter-name>CookieFilter</filter-name>
  <filter-class>com.paic.phssp.common.filter.CookieFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>CookieFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 <filter> 
     <filter-name>SecurityAclFilter</filter-name> 
     <filter-class>com.paic.phssp.common.filter.SecurityAclFilter</filter-class> 
 </filter>
 <filter-mapping>
  <filter-name>SecurityAclFilter</filter-name>
  <url-pattern>*.do</url-pattern>
 </filter-mapping>
 <filter-mapping>
  <filter-name>SecurityAclFilter</filter-name>
  <url-pattern>*.screen</url-pattern>
 </filter-mapping>
 <filter> 
     <filter-name>AppScanFilter</filter-name> 
     <filter-class>com.paic.phssp.common.filter.AppScanFilter</filter-class>
     <init-param>
            <param-name>excludedPages</param-name>
            <param-value>/phssp/document.create.check.prop.do,/phssp/document.create.content.do,/phssp/document.create.new.do,/phssp/document.create.update.do,/phssp/document.editPreView.do,/phssp/newDocument.detialPreView.do,/phssp/document.detialPreView.do,/phssp/document.downLoadPdf.do,/phssp/document.detialPreWordView.do,/appsvr/phssp/redis/test</param-value><!-- 匹配不做拦截的请求声明-->
        </init-param>
 </filter>
 <filter-mapping>
  <filter-name>AppScanFilter</filter-name>
  <url-pattern>*.do</url-pattern>
 </filter-mapping>
 <filter-mapping>
  <filter-name>AppScanFilter</filter-name>
  <url-pattern>*.screen</url-pattern>
 </filter-mapping>
 <filter>
     <filter-name>UMSecurityFilter</filter-name>
     <filter-class>
         com.pingan.security.client.filter.UMSecurityFilter
     </filter-class>
     <init-param>
         <param-name>SecurityPropertiesName</param-name>
         <param-value>um-security.properties</param-value>
     </init-param>
     <init-param>
         <description>不希望被拦截的页面, 默认不拦截js css 图片</description>
         <param-name>publicPages</param-name>
         <param-value>/login;/login.jsp;/ssologin.jsp;/logout.jsp;/ssp/privilege/ISendUserPrivilege.do;/appsvr/phssp/doc/generate.do;/appsvr/phssp/redis/test;/phssp/newDocument.detialPreView.do;/phssp/pdfsign.manage.getBasemessage.do;/phssp/pdfsign.manage.getBasemessage.do</param-value>
     </init-param>
     <init-param>
         <param-name>UserRoleService</param-name>
         <param-value>
             com.pingan.security.client.policy.acl.service.UM2UserRoleService
         </param-value>
     </init-param>
 </filter>
 <filter-mapping>
     <filter-name>UMSecurityFilter</filter-name>
     <url-pattern>*</url-pattern>
     <dispatcher>REQUEST</dispatcher>
     <dispatcher>FORWARD</dispatcher>
 </filter-mapping> 
 
 <filter>
  <filter-name>Set Character Encoding</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
 </filter>
 <filter-mapping>
  <filter-name>Set Character Encoding</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 
     <filter>
  <filter-name>RefererFilter</filter-name>
  <filter-class>com.paic.phssp.common.filter.RefererFilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>RefererFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

其中有四个是在代码中有实现的,其他 都是引用第三方jar包的。

下面我们就来看看这四个实现的filter

AppScanFilter.java

filter实例的更多相关文章

  1. js array.filter实例(数组去重)

    语法: 循环对数组中的元素调用callback函数, 如果返回true 保留,如果返回false 过滤掉,  返回新数组,老数组不变 var new_array = source_array.filt ...

  2. Shiro安全框架入门篇(登录验证实例详解与源码)

    转载自http://blog.csdn.net/u013142781 一.Shiro框架简单介绍 Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权.Shiro在JavaSE和J ...

  3. Servlet Filter

    Filter : Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应. 主要用于对HttpServletRequest 进行预处理,也可以对Http ...

  4. Servlet的过滤器Filter

    Servlet 编写过滤器 Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息. 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Serv ...

  5. java Servlet中的过滤器Filter

    web.xml中元素执行的顺序listener->filter->struts拦截器->servlet. 1.过滤器的概念 Java中的Filter 并不是一个标准的Servlet ...

  6. [原创]java WEB学习笔记44:Filter 简介,模型,创建,工作原理,相关API,过滤器的部署及映射的方式,Demo

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  7. 过滤器 Filter

    Filter(过滤器)简介 Filter 的基本功能是对发送到 Servlet 的请求进行拦截, 并对响应也进行拦截. Filter 程序是一个实现了 Filter 接口的 Java 类,与 Serv ...

  8. Servlet、Filter 生命周期

    Servlet作为JavaEE必须掌握的内容,Struts2通过使用Filter的功能实现了一个MVC的框架.因此掌握这Servlet以及Filter的生命周期显得非常重要. 1. Servlet的生 ...

  9. 过滤器(Filter)

    day21 过滤器概述 1 什么是过滤器 过滤器JavaWeb三大组件之一,它与Servlet很相似!不它过滤器是用来拦截请求的,而不是处理请求的. 当用户请求某个Servlet时,会先执行部署在这个 ...

随机推荐

  1. shell 脚本实战笔记(9)--linux自动批量添加用户

    前言: 添加linux用户帐号,这个相对简单, 在面对集群, 许多机器的时候, 我们该如何去做和实现? 这篇短文, 简单讲解一些思路, 尽可能地涉及周边的一些知识点. 不光是运维人员会面临这个问题, ...

  2. Gym 101745 D.Stamp Stamp Stamp

    题目网页链接: http://codeforces.com/gym/101745/problem/D 思路:首先可以确保能够成功染色的字符串都是结果串的子串,那么O(n^2)枚举子串之后dp转移即可. ...

  3. AJAX异步实现简单的瀑布流

    传统瀑布流布局ul-li,需要先设定显示几列,每列是一个li,需要左浮动并指定宽度,li里面的布局也要先布局好,主要是要定宽,高度自动:然后通过ajax异步,从数据库中得到数据,遍历后将数据插入最矮的 ...

  4. Eclipse+Spring学习(一)环境搭建(转)

    最近由于投了一家公司实习,他要java工程师,而我大学3年的精力都花到了ASP.NET和前端上面,到找工作的时候才发现大公司不要.NET的,所以马上转型java...由于网上的高手都不屑于写这类文章, ...

  5. TensorFlow笔记-03-张量,计算图,会话

    TensorFlow笔记-03-张量,计算图,会话 搭建你的第一个神经网络,总结搭建八股 基于TensorFlow的NN:用张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数) ...

  6. FastAdmin 开发第一天:了解 FastAdmin 框架

    了解 FastAdmin 框架 后端组件 ThinkPHP 5 EasyWeChat qr-code 前端组件 AdminLTE bootstrap bootstrap-table jquery la ...

  7. vue-resource 知识点

    vue-resource 发送json到后端: Content-Type字段的类型是application/json,就会有options请求. http://www.ruanyifeng.com/b ...

  8. Visual Studio2010不能安装Silverlight4_Tools,提示语言不一致

    天在装Silverlight4_Tools时出现“必须先安装与 Silverlight Tools 4 语言版本相一致的 Visual Studio 2010.Visual Web Developer ...

  9. 如何调试触发器-MSSQL (转帖)

    调试触发器 //------------------------------------- 作者:四海为圈(原创) //------------------------------------- 1. ...

  10. JQuery返回Json日期格式的問題

    用JQuery Ajax返回一個Entity的Json數據時,如果Entity的屬性中有日期格式,那返回來的是一串字符串,如下圖所示: 在網上找了很久也沒有找到一個好的解決方案,最後自己寫一個java ...