Я использую JPA/Hibernate над PGSQL DB.JPA: Создание объекта всякий раз, когда создается другой объект
У меня есть сущность в моем приложении, и я хочу сохранить другую сущность (другого типа) каждый раз, когда сохраняется первая сущность. Например, всякий раз, когда создается «ORDER», я хочу немедленно сохранить пустой объект ORDER_INVOICE и подключить его к заказу. Они находятся в двух разных таблицах.
Сначала я подумал о написании функции @PostPersist для объекта ORDER и сохранении в нем ORDER_INVOICE, но моя проблема в том, что в этом контексте у меня нет Менеджера сущностей.
Я стараюсь избегать того, чтобы помнить о сохранении ORDER_INVOICE при каждом сохранении ЗАКАЗА.
Это правильный путь? Если да, то как мне получить EM в PostPersist? А если нет, что было бы лучше?
С «созданными» вы имеете в виду «упорство»? – MRalwasser
@MRalwasser: Да. –
Для этого не существует стандартизированного способа: из спецификации JPA 1.0: «В общем, переносные приложения не должны вызывать операции EntityManager или Query, обращаться к другим экземплярам сущности или изменять отношения в методе обратного вызова жизненного цикла." , Возможно, вы можете использовать такое решение, как @JB Nizet. – MRalwasser