有沒有辦法設置一些(默認)值,如果實體未找到(只有如果實體未找到 - EntityNotFound異常)?如果DB中有空值,則該字段必須爲空。 例如,我有一個實體先用關係到實體第二:JPA的默認值,如果實體沒有找到
class First {
...
@ManyToOne @JoinColumn(name="second", nullable=true)
@NotFound(action = NotFoundAction.IGNORE)
Second second;
...
}
如果列「第二」在DB(表「第一」)爲空,則first.second必須爲空。如果DB(表「第一個」)中的列「second」是5(第二個id = 5),並且id = 5的表「Second」中不存在行,則firts.second應該是某個默認值(實體) ,例如實體第二個id = 1或新的第二個(params);
是的,我使用get/set方法。但是,只有在發生EntityNotFound異常時,我才需要defaultValue。如果字段「second」爲空並且沒有異常,那麼提交的«second»應該爲null(不是defaultValue) – Vadim
當您使用關係時,您將獲得空數組而不是EntityNotFound - JPA不會引發異常來解決相關問題。因此,使用空的大小檢查裏面獲取方法 – Dewfy
我得到EntityNotFound當某個表包含一個鏈接到其他表不包含所需的數據 – Vadim