从Spring Security Expressions调用静态方法?

C. *_*oss 31 spring spring-security spring-el

我正在寻找一种方法来扩展Spring Security Expressions以支持现有的安全基础架构.我知道你可以像这里描述的那样扩展MethodSecurityExpressionRoot ,但我也发现了通过Spring Expression Language(Spring EL或SpEL)直接调用静态方法的引用.不幸的是,关于Spring Expression方法的官方页面并未直接描述如何执行此操作.

如何通过Spring Expression方法调用静态方法?

C. *_*oss 54

通过使用T(fully.qualified.name).methodName()语法显然.该T元素返回对类型的引用而不是实例.

例如,相当于java.lang.Class

T(java.util.Collections).singleton('Hello')
Run Code Online (Sandbox Code Playgroud)

  • @JinKwon `T(java.util.Collections).singleton(#yourArg)` (2认同)