2014-02-16 150 views
13

在Spring的@Cacheable註釋我想指定一個unless條件。比較SpEL中的枚舉

但是,我的返回值既不是原始類型也不是Java bean,而是Enum。

我該如何比較Spl中另一個枚舉的相等性(Spring Expression Language)?

+0

你能更具體嗎?什麼是兩個操作數?你在比較什麼? –

+0

@SotiriosDelimanolis枚舉的一個實例和枚舉的值。像'instance == Enum.CERTAIN_VALUE'。 –

回答

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

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

將正常工作。

+0

你是對的@michaldo。我改變了我的答案,實際上有效。從我的頭頂上寫下了這個。對不起,第一次不好的嘗試。 – sorrymissjackson

+0

現在沒問題。我取消了我的評論 – michaldo

+0

這可能比接受的答案短很多,因爲您不需要編寫整個完全合格的路徑。 – Wouter