java - 有没有办法在没有 Spring 安全的情况下使用 Spring 过滤器链?

标签 java spring spring-mvc spring-security servlet-filters

我想在我的 spring web 应用程序中添加几个过滤器,但它们不会有任何关于安全性的内容,至少目前是这样。所以。如果没有 spring-security,我所能做的就是在 web.xml 中定义多个过滤器(定义过滤器的旧方法)。似乎很奇怪,为了能够使用 spring 过滤器链,我需要添加 spring-security 作为我项目的依赖项。也许我做错了什么,确实有过滤器链可以在没有 spring-security 依赖的情况下使用?

最佳答案

Spring Security 能够使用 FilterChainProxy 将多个过滤器捆绑到一个过滤器中它包含在 Spring Security 中。由于代码存在于 Spring Security 中,您不能在不添加对 spring-security-web 的依赖的情况下使用它,除非将代码复制粘贴到您自己的项目中(许可证可接受)。 FilterChainProxy 实际上是 DelegatingFilterProxy 委托(delegate)给的 Spring Bean 定义的过滤器。所以它看起来像这样

DelegatingFilterProxy
  -> delegates to FilterChainProxy
     -> delegates to multiple Filter's defined on the FilterChainProxy

关于java - 有没有办法在没有 Spring 安全的情况下使用 Spring 过滤器链?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19907869/

相关文章:

java - 如何使用 Spring 注入(inject)属性文件?

java - 如何确保抛出 HttpClientErrorException 会导致 HTTP 400 响应?

java - 在 Java 中使用泛型类型和 String.format

java - 如何将参数注入(inject)TestNG类的构造函数?

java - 国际象棋分层问题

java - 使用 MockMVC 在 JUnitTest 中注册 @ControllerAdvice 带注释的 Controller

java - Spring Oauth 端点的模拟服务器

java - 在java中将图像作为文本发送

java - BeanPostProcessor 方法没有被调用

java - ImageIO.read( ) 总是旋转我上传的图片