zoukankan      html  css  js  c++  java
  • servlet过滤器简化版

    什么是过滤器
    在struts2 中集成了过滤器,并可以根据需要选择合适自己的过滤器进行配置 ,

    • 过滤器:是基于函数回调的,运用java中的反射机制工作在struts2只能对于action起作用,在servlet根据需要拦截
    • 拦截器:比过滤器功能更强大,可以拦截所以client请求,以及struts2中值栈的请求

    servelt实现过滤器 implement Filter 接口即可
    struts2实现过滤器 extends AbstractInterceptor 并覆盖 interceptter方法

    这里以标题为准 演示 servlet 拦截器的实现方法

    web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://java.sun.com/xml/ns/javaee"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id="WebApp_ID" version="2.5">
        <display-name>fifterDemo</display-name>
        <welcome-file-list>
            <welcome-file>index.html</welcome-file>
            <welcome-file>index.htm</welcome-file>
            <welcome-file>index.jsp</welcome-file>
            <welcome-file>default.html</welcome-file>
            <welcome-file>default.htm</welcome-file>
            <welcome-file>default.jsp</welcome-file>
        </welcome-file-list>
    
        <!-- 实现拦截器 -->
        <filter>
            <filter-name>filter</filter-name>
            <filter-class>fifterDemo.fifterdemo</filter-class>
        </filter>
        <!-- 拦截器映射 -->
        <filter-mapping>
            <filter-name>filter</filter-name>
            <url-pattern>/*</url-pattern>
    
        </filter-mapping>
    </web-app>

    code.java

    package fifterDemo;
    
    import java.io.IOException;
    
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    
    /**
     * @author DGW
     * @date 2017 2017年5月3日 下午10:15:12
     * @filename fifterdemo.java  @TODO
     */
    public class fifterdemo implements Filter {
    
        @Override
        public void doFilter(ServletRequest request, ServletResponse response,
                FilterChain chain) throws IOException, ServletException {
            if (request.getParameter("user").equals("")) {
                System.out.println("null值 已经过滤");
            }
            RequestDispatcher dispatcher = request
                    .getRequestDispatcher("index.jsp");
            dispatcher.forward(request, response);
    
        }
    
    }
    

    result

  • 相关阅读:
    C# 实现 Snowflake算法生成唯一性Id
    kafka可视化客户端工具(Kafka Tool)的基本使用(转)
    docker 安装kafka
    Model类代码生成器
    使用docker 部署rabbitmq 镜像
    Vue 增删改查 demo
    git 提交代码到库
    Android ble蓝牙问题
    mac 配置 ssh 到git (Could not resolve hostname github.com, Failed to connect to github.com port 443 Operation timed out)
    okhttp
  • 原文地址:https://www.cnblogs.com/dgwblog/p/7635210.html
Copyright © 2011-2022 走看看