2015-12-18 77 views
0

我正在使用@Convert(converter = CoverConverter.class)在將屬性值存儲到數據庫之前進行轉換,反之亦然。我必須在每個使用特定ENUM的地方聲明這個註釋。現在我們稱它爲TestENUM有沒有辦法將@Convert直接聲明到ENUM

但是,這個特殊的ENUM在100多個地方使用,我不確定我的組中的其他開發人員在使用此ENUM時是否記得添加此註釋。

所以我想知道是否有我可以在一種方式,只要它是用來將被被持續到數據庫之前從數據庫通過JPA

轉換,反之亦然取出時直接註釋一個ENUM的方式所以例如:

@Convert(convert = true) 
public enum TestENUM {} 

回答

2

你應該能夠創建一個轉換器,並使用自動應用屬性:如果自動應用元素被指定爲真

持久 提供商必須與轉換器自動地應用到指定的目標類型的所有映射 屬性的所有實體在 持久單元除了用於其轉換 重寫由轉換註釋(或XML當量)的裝置屬性。

http://docs.oracle.com/javaee/7/api/index.html?javax/persistence/Convert.html

@Converter(autoApply = true) 
public class MyEnumConverter implements Converter{ 

} 
+0

太謝謝你了。 –

相關問題