什么是Filter
Filter的意思是过滤器,主要应用在Java Web中,我们在浏览器(客户端)中点击某个链接或按钮时,就会向服务器发生请求。当然服务器是不会对所有的信息都会接收,就像是你去可口可乐家买百事可乐,你只会收到:对方不想理你并把你拉黑的信息。为了解决这样的情况,常常都会设置一个门卫角色,对于有奇奇怪怪要求的人是不会被放行的,这对应于实际网络环境下的门卫就是filter。在客户端(浏览器)到服务器的过程中,会对你发出的请求进行过滤,如果有不符合的信息就会被filter所拦截,当然你是正常且符合要求的请求是会被放行。
Filter的运行结构
值得注意的是,filter可以多个配合使用。同时客户端–>服务器、服务器–>客户端的流程中,filter都可以生效。
filter的应用场景
- 自动登录
- 统一设置编码格式
- 访问权限控制
- 敏感字符过滤
- 设置跨域问题等
filter的生命周期
在项目开始启动的时候,过滤器开始初始化,当有请求来的时候开始自动去执行doFilter方法,随着项目的关闭过滤器开始停止。
filter的代码实现
参考资料
1、https://www.jb51.net/article/190666.htm
2、https://blog.csdn.net/wcc27857285/article/details/80298342
本人新人,纪录下学习中遇到的困惑,文章中有不足之处还望请指正。