| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Отношение сущностей в JPA |
| Автор: oson 4.12.2012, 18:46 |
| Подскажите пожалуйста. Есть например сущность Person. И есть сущность Offer - предложение, которое делают этому Person. Например по логике Person не должен знать предложения. То есть Person сущность постоянная, а Offer - сущности постоянно меняются. То есть Offer содержит ссылку personId, а у Person не имеет ссылки на offer. И тут получается такая ситуация - если удаляем Person, то у нс остаются подвешенные Offer,потому что в мэппинге Person мы не можем указать orphanRemoval = true. Вопрос - если уж по логике предметной области Person не должен знать про Offer - нужно ли следовать так точно в мэппинге этому и делать связь однонаправленной, если это приведет к таким вот абсурдным ситуациям - ничейные Offer при удаленном Person? |
| Автор: AntonSaburov 4.12.2012, 18:53 |
| Значит удалять Person нельзя, т.к. на него есть Offer. Вообще удалять такого рода данные (справочники) дело неблагодарное - лучше делать неактивным. |
| Автор: oson 4.12.2012, 19:59 |
| То есть обрабатывать на другом уровне. То есть например PersonService имеет метод delete(Person) - а внутри он фактически ставит поле deleted у Person в true и находит по этому personId все Offerы и тоже ставит поле deleted у них в true. Типа так? |