java – 在Spring注释中使用静态变量

前端之家收集整理的这篇文章主要介绍了java – 在Spring注释中使用静态变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 spring的PreAuthorize注释,如下所示:
@PreAuthorize("hasRole('role')");

但是,我已经将’role’定义为另一个类的静态String.如果我尝试使用这个值:

@PreAuthorize("hasRole(OtherClass.ROLE)");

我收到一个错误

org.springframework.expression.spel.SpelEvaluationException: EL1008E:(pos 14): Field or property 'OtherClass' cannot be found on object of type 'org.springframework.security.access.expression.method.MethodSecurityExpressionRoot'

有没有办法使用PreAuthorize注释来访问这样的静态变量?

解决方法

尝试以下使用Spring表达式语言来评估类型:
@PreAuthorize("hasRole(T(fully.qualified.OtherClass).ROLE)");

确保指定完全限定的类名.

Documentation

原文链接:https://www.f2er.com/java/123962.html

猜你在找的Java相关文章