本篇文章给大家带来的内容是关于Servlet过滤器Filter的简单介绍(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

特点

1)Filter是依赖于Servlet容器,属于Servlet规范的一部分,在Servlet API中定义了三个接口类:Filter, FilterChain, FilterConfig。

2)基本功能是对 调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊的功能。

3)需要在 web.xml 文件中进行注册和设置它所能拦截的资源。

编码public class UserNoFilter implements Filter {

private FilterConfig filterConfig; //获取参数配置

public void init(FilterConfig fConfig) throws ServletException {

this.filterConfig = fConfig;

}

/**

* 业务逻辑判断

*/

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {

String initUser = filterConfig.getInitParameter("userNo");

String userNo = request.getParameter("userNo");//从提交请求获取用户账号

if(!initUser.equals(userNo)){

request.setAttribute("message", "用户名不正确");

request.getRequestDispatcher("/index.jsp").forward(request, response);

return;

}

chain.doFilter(request, response);

}

public void destroy() {

}

}

web.xml参数

UserNoFilter

UserNoFilter

com.demo.filter.UserNoFilter

userNo

admin

UserNoFilter

/hello.jsp

应用

1)指定编码格式request.setCharacterEncoding(encoding);

filterChain.doFilter(request, response);

2)用户是否登录、用户能否访问菜单String userId=(String) session.getAttribute("userId");

if (userId ==null){

}

java过滤器应用实例_Servlet过滤器Filter的简单介绍(附示例)相关推荐

  1. 【修真院JAVA小课堂】redis缓存集群简单介绍

    大家好,我是IT修真院郑州分院第11期的JAVA学员,一枚正直纯洁善良的java程序员. 今天给大家分享一下,redis缓存集群简单介绍. 1.背景介绍 redis是一个key-value存储系统.和 ...

  2. java 随机生成英文名_java随机数Reandom(简单介绍)

    简单介绍 Java中存在着两种Random函数 一.java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0, ...

  3. java web中英翻译_中英文翻译简单web项目示例(3)

    我们上一篇初步体验了一把百度翻译api的魅力,由于分享作者是一位java程序员,所以下载的是百度翻译java语言开发包,这节主要分享介绍基于java web项目嵌入百度翻译api做个简单的中文翻译英文 ...

  4. Java定时任务调度实战(2)Quart框架的简单介绍

    一.前言 在之前的文章<Java定时任务调度(1)TimerTask原理与实战>中已经介绍了一种实现定时任务调度的方法--Java原生提供的 TimerTask,这个工具适用于一些简单的业 ...

  5. java servlet jsp 实例_Servlet+JSP例子

    前面两节已经学习了什么是Servlet,Servlet接口函数是哪些.怎么运行.Servlet生命周期是什么?  以及Servlet中的模式匹配URL,web.xml配置和HttpServlet.怎么 ...

  6. java请求转发实例_Servlet请求转发的步骤和实例

    请求转发 一次请求Servlet对应的request对象,在此request中存储数据,可以在此request对象中取出:但是在另一次请求Servlet对应的request对象,是没有第一次请求时在r ...

  7. python神经网络实例_Python编程实现的简单神经网络算法示例

    本文实例讲述了Python编程实现的简单神经网络算法.分享给大家供大家参考,具体如下: python实现二层神经网络 包括输入层和输出层 # -*- coding:utf-8 -*- #! pytho ...

  8. Java 8 方法引用 (Method Reference)快速介绍与示例

    Method Reference 是什么? Method Reference 是Java 8 才开始提供的新特性, 翻译过来是方法引用. 其定义就是: 把已经定义好的名字和方法, 当做Lambda 表 ...

  9. Java orm框架的优缺点,ORM框架的简单介绍

    1. 什么是ORM? 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.简单来说,将程序中的兑现自动持久化 ...

最新文章

  1. ckeditor finder php,CKEDITOR CKFINDER的图片上传配置(C#/asp.net/php)
  2. CBA - Success function for Create Oppt call
  3. python文件行数统计_文件行数和代码行数统计
  4. Remoting-1
  5. 中国汽车产业数字化服务商研究报告及TOP50榜单
  6. Node.js: 如何退出node命令或者node server
  7. python ini文件 遍历_【自动化测试】Python 读取 .ini 格式文件
  8. 启动与关闭VMware Workstation的BAT批处理脚本
  9. java生产环境增量发版陷阱【原】
  10. excel怎么设置打印区域_淘宝卖家想要打印快递单怎么设置
  11. 什么是SpringDataJPA
  12. 计算机应用技术5g通信,浅谈5g网络通信技术【浅谈多媒体通信技术的应用】
  13. 福建广电网络显示服务器异常,无法浏览网页故障
  14. 取消微信抢票的服务器,微信抢票怎么取消?
  15. android 换肤(1)——插件式无缝换肤(解析鸿洋大神的换肤流程)
  16. Excel找回打开密码过程
  17. Powerdesigner将数据表的Name变中文,字段全部变大写
  18. Pandas中replace替换问题
  19. 文科生本科专业能学计算机吗,请问高中文科生到大学里学“软件技术”这个专业,上课能听懂,跟得上么?...
  20. Docker-搭建私有仓浅谈

热门文章

  1. webpack4.x实战七,生产模式和开发模式分开打包
  2. Powershell 函数中的CmdletBinding()是怎么回事?
  3. 最好用的mysql密码忘记的解决方法
  4. spring mvc 转发跳转
  5. -Xlint:deprecation
  6. Linux常用的基本命令08
  7. 一个简单demo通过em实现‘响应式设计、em、文字图标svg’
  8. Linux Bash命令关于程序调试详解
  9. sqoop 中文文档 User guide 三 export
  10. 数学分析原理 定理 6.12