寻找写代码的感觉(8)使用回弹过滤器。
一、什么是过滤器
过滤是对数据进行过滤和预处理的过程。我们在访问一个网站的时候,有时候会发布一些敏感的信息,发布之后有些会被*替换。还有登录权限的控制等。未经授权,用户不能随意访问资源。此时,也可以使用过滤器。该过滤器具有URL级权限控制、响应信息压缩、编码格式等多种功能。
过滤器依赖于servlet容器。基于函数回调,几乎可以过滤所有请求。
二、过滤器的使用
让我们简单谈谈如何在Spring Boot添加过滤器。
过滤器使用实例
具体示例代码如下:
package .蓉蓉. wiki . filter;
import org . slf4j . logger;
import org . slf4j . logger factory;
import org . spring framework . stereotype.component;
导入javax . servlet . *;
导入javax . servlet . http . HttpServletrequest;
导入Java . io . ioexception;
@组件
公共类LogFilter实现了筛选器{ 0
私有静态最终Logger LOG=Logger factory . getlogger(logfilter . class);
@覆盖
public void init(filter config filter config)引发ServletException {
}
@覆盖
public void doFilter(servlet request servlet request、ServletResponse servletResponse、FilterChain filterChain)引发IOException、ServletException {
//打印请求信息。
httpersvletrequest请求=(httpersvletrequest)servlet request;
log . info('-);
LOG.info('请求地址: {} {} ',request.getrequesturl()。tostring()、request . getmethod());
LOG.info('远程地址: {} ',request . getremote addr());
long start time=system . currenttimemillis();
filter chain . dofilter(servlet request,servlet response);
log . info('-);
}
/**
*销毁过滤器时自动调用。
*/
@覆盖
public void destroy(){ 0
System.out.println('我是过滤器被破坏时调用的方法!我不能再活下去了。..');
}
}
过滤器里面的三个方法
init: filter对象只创建一次,init方法只执行一次。
DoFilter:主要的业务代码编写方法,可以反复调用。
销毁:当过滤器被销毁时自动调用(程序关闭或主动销毁过滤器)。
三、测试结果
重新启动服务,刷新页面,并检查结果,如下所示:
至此,在介绍完SpringBoot过滤器的使用方法后,感兴趣的同学可以自行尝试一下。
优秀不够,你是否无可替代
软件测试交流QQ群:721256703,期待您的加入!
欢迎关注我的微信公众号:软件测试君
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/51640.html