filter是哪种设计模式的典型案例

filter是哪种设计模式的典型案例,第1张

过滤器模式(Filter Pattern)或标准模式烂闷伏(Criteria Pattern)是一种设计模式。

来过滤 Person 对象的列表。典型案例有。

1、防盗链Filter

2、字符编码Filter。

3、日志记录Filter。

4、异常捕获Filter。

5、饥携权限校验filter。

6、内容替换Filter。

7、GZIP压缩Filter。

8、图像水印Filter。

9、缓存Filter。

10、罩首XSLT转换Filter。

11、文件上传Filter。

1、比如我在大多数时候可能使用 Filter 因为这种是最通用键稿的 比如做一个底层的用户包 需要部署N台 可能有的用struts2

有的用spring 那么我就用Filter 还有必须在某些拦截器之前执行的 可以用这个

也就是在没有很好的用Interceptor的理由的情况下 用Filter

2、如果你的拦截器只在本项目中使用 且需要注入资源等 可以用拦截器

还有一种比较细节的场景 如你要凯余在Filter中获取parameter 但此次处理是文件上传 如果不自己去转换Request则是得不到参数的 此时可以考盯亮滚虑用拦截器(因为进入拦截器时已经把request转了 可以拿参数了)

如果需要在Filter注入东西 但就想用Filter 可以使用org.springframework.web.filter.DelegatingFilterProxy

<filter>

<filter-name>syncOnlineSessionFilter</filter-name>

<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>

<init-param>

<param-name>targetFilterLifecycle</param-name>

<param-value>true</param-value>

</init-param>

</filter>

它会自动到spring容器中找syncOnlineSessionFilter(Filter类型)的bean 使用


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/tougao/12140854.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存