2016-04-14 84 views
0

我有一個存儲爲布爾值的MongoDB集合中的遺留屬性,但該屬性已經發展並且它已成爲一個對象。Morphia - 如何忽略加載屬性,如果它是某種類型?

Morphia有沒有辦法在布爾值時忽略加載這些屬性?我只想檢索它們,如果它們是新版本的(Object),如果它們是我只是想忽略它們的布爾值。

當我試圖找到()與物業作爲一個布爾值的文檔,我得到:

java.lang.ClassCastException:java.lang.Boolean中不能轉換爲com.mongodb.DBObject !在org.mongodb.morphia.mapping.EmbeddedMapper.fromDBObject(EmbeddedMapper.java:162)〜[嗎啡-1.0.1.jar:NA]

任何想法?謝謝

回答

0

您可以在方法上使用@PreLoad註釋,如果它是布爾值,則從DBObject中刪除該字段。然後DBObject的後續處理應該正確地反序列化。你可以看到一個例子here

+0

太棒了!像一個魅力工作;-) – GCarbajosa

+0

好消息。很高興我能幫上忙。甚至在我吃完早餐之前! :d – evanchooly

相關問題