Filter和Listener 登录拦截和敏感词汇拦截器JDk动态代理增强GetParameter方法

FilterAndListener


  1. web中的过滤器, 当访问服务器的资源的时候,可以将请求和响应拦截下来
  2. 通用化的处理, 比如说登录的功能,统一的编码问题可以放在过滤器中进行拦截

    快速入门 ##

  3. 定义一个类,实现Filter接口

  4. 复写方法
  5. 配置拦截路径
    1. 注解的配置

     `@WebFilter("/*")
    public class FilterDemo1  implements Filter {
        @Override
        public void init(FilterConfig filterConfig) throws ServletException {

        }

        @Override
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
            System.out.println("servletDFilterDemo执行了");
            // 放行
           filterChain.doFilter(servletRequest,servletResponse);
        }

        @Override
        public void destroy() {

        }
    }`

2. web.xml 方式的配置
     `<filter>
<filter-name>demo1</filter-name>
<filter-class>com.liangxin.web.Filter.FilterDemo1</filter-class>
</filter>
<filter-mapping>
    <filter-name>demo1</filter-name>
<!--拦截路径-->
<url-pattern>/*</url-pattern>
</filter-mapping>`

3. 过滤器的执行流程
     `WebFilter("/*")
public class FilterDemo2 implements Filter {
public void destroy() {
}

public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
    System.out.println("我是用来执行request请求的 ,我是在放行方法doFilter方法之前执行的");
    // 放行
    chain.doFilter(req, resp);
    System.out.println("在放行之后 ,执行请求资源文件或者路径之后, 再回来执行执行放行之后的方法");
}

public void init(FilterConfig config) throws ServletException {

}

`


4. 过滤器的生命周期
    `@WebFilter( "/*")
public class FilterDemo3 implements Filter {
public void destroy() {
    System.out.println("我是destroy方法&
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值