如何使用不同的URL模式注册多个不同的过滤器?

huangapple 未分类评论49阅读模式
英文:

How to register several different filters with differnt url patterns?

问题

Spring提供了机会来注册具有不同URL模式的多个过滤器,就像这样:

  1. @Bean
  2. public FilterRegistrationBean<Filter> filterOne() {
  3. FilterRegistrationBean<Filter> regBean = new FilterRegistrationBean<>();
  4. regBean.setFilter(FilterOne);
  5. regBean.setUrlPatterns(Collections.singleton("/patternOne"));
  6. return regBean;
  7. }
  8. @Bean
  9. public FilterRegistrationBean<Filter> filterTwo() {
  10. FilterRegistrationBean<Filter> regBean = new FilterRegistrationBean<>();
  11. regBean.setFilter(FilterTwo);
  12. regBean.setUrlPatterns(Collections.singleton("/patternTwo"));
  13. return regBean;
  14. }

但看起来代码在重复(如果我想注册很多过滤器的话),这样做可以吗?如果不行,我该如何避免这种重复?

英文:

Spring gives opportunity to register several Filters with different url patterns like this:

  1. @Bean
  2. public FilterRegistrationBean&lt;Filter&gt; filterOne() {
  3. FilterRegistrationBean&lt;Filter&gt; regBean = new FilterRegistrationBean&lt;&gt;();
  4. regBean.setFilter(FilterOne);
  5. regBean.setUrlPatterns(Collections.singleton(&quot;/patternOne&quot;));
  6. return regBean;
  7. }
  8. @Bean
  9. public FilterRegistrationBean&lt;Filter&gt; filterTwo() {
  10. FilterRegistrationBean&lt;Filter&gt; regBean = new FilterRegistrationBean&lt;&gt;();
  11. regBean.setFilter(FilterTwo);
  12. regBean.setUrlPatterns(Collections.singleton(&quot;/patternTwo&quot;));
  13. return regBean;
  14. }

But it looks like code repeating(if i want to register a lot of filters), is it ok? If not, how can I avoid this

huangapple
  • 本文由 发表于 2020年5月4日 23:02:18
  • 转载请务必保留本文链接:https://java.coder-hub.com/61595313.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定