At Spring's @Cacheable annotation I want to specify an unless condition.

However my return value is neither a primitive type nor a Java bean, but an Enum.

How can I compare for equality with another Enum in SpEL (Spring Expression Language)?

有帮助吗?

解决方案

#result == T(fully.qualified.path.to.AnEnum).A_VALUE

Reference here:

You can use the special T operator to specify an instance of java.lang.Class (the type).

其他提示

#object.someEnumProperty.name() == 'CERTAIN_VALUE'

would work as well.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top