【问题标题】:Compare Enums in SpEL比较 SpEL 中的枚举
【发布时间】:2014-03-15 09:42:08
【问题描述】:

在 Spring 的 @Cacheable 注释中,我想指定一个 unless 条件。

但是我的返回值既不是原始类型也不是 Java bean,而是一个枚举。

如何与 SpEL 中的另一个 Enum(Spring 表达式语言)比较相等性?

【问题讨论】:

  • 你能说得更具体点吗?两个操作数是什么?你在比较什么?
  • @SotiriosDelimanolis 枚举的实例和枚举的值。喜欢instance == Enum.CERTAIN_VALUE

标签: java spring enums comparison spring-el


【解决方案1】:
#result == T(fully.qualified.path.to.AnEnum).A_VALUE

【讨论】:

  • 也可以
【解决方案2】:

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

也可以。

【讨论】:

  • 你是对的@michaldo。我将答案更改为实际有效的东西。从我的头顶写下这个。很抱歉第一次尝试失败。
  • 现在可以了。我取消了我的评论
  • 这可能比接受的答案要短很多,因为您不需要编写整个完全合格的路径。
  • 但你必须确保它始终与枚举变量匹配,以防它发生变化
猜你喜欢
  • 1970-01-01
  • 2012-05-04
  • 1970-01-01
  • 2018-01-14
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
  • 2023-03-17
  • 1970-01-01
相关资源
最近更新 更多