Мы используем JPA для загрузки некоторых вещей из базы данных. Некоторые сущности могут иметь дополнительные отношения между ними, например, < /p>
@Entity
public class First {
....
@OneToOne(cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH, CascadeType.DETACH})
@JoinColumns(value = {
JoinColumn(name = "A_ID", referencedColumnName = "A_ID", insertable = false, updatable = false),
JoinColumn(name = "B_ID", referencedColumnName = "B_ID", insertable = false, updatable = false)})
private Second second;
< /code>
Когда в базе данных присутствует эта ассоциация, все работает нормально. Когда это не так, я получаю javax.persistence.entitynotfoundexception < /code>
то, что я хочу, - это вместо исключения, чтобы это поле было нулевым, если ассоциации отсутствует. < /p>
Я пробовал несколько разных вещей, например, Используя необязательный = true в аннотации отношений (который, кстати, является опцией по умолчанию), ставит ее как нулевое и т. Д., Кажется, ничто не делает свое дело, кажется, что все эти варианты игнорируются. < /p>
Я обнаружил, что много ссылок, упоминающих эту же проблему (и некоторые вопросы здесь, в Stackoverflow), но во всех из них предложение состоит в том, чтобы использовать аннотацию @notfound < /code> из Hibernate. Но мы не хотим иметь какие -либо зависимости от спячки (мы хотим сохранить все чистое JPA). < /p>
Кто -нибудь из вас, ребята, знает какой -либо другой способ решить это? < /p>
Большое спасибо за вашу помощь! < /p>
Подробнее здесь: https://stackoverflow.com/questions/122 ... using-notf