Спящие сущности являются объектами Java.Ничто не мешает вам писать логику в эти объекты.На самом деле это хорошая вещь, если вы делаете.Вы можете получить что-то вроде этого:
@Entity
public class Parent {
...
@OneToMany
private Set<Child> children;
...
public Set<Child> getChildren() {
if (children == null) {
children = new HashSet<Child>();
}
return children;
}
public Child getLastAddedChild() {
for(Child child: getChildren()) {
... logic ...
}
return lastAddedChild;
}
}
Обратите внимание, что эта реализация не оптимизирована, это всего лишь пример.Но вы можете делать все что угодно, например, иметь поле @ Transient для хранения последнего добавленного потомка (используя ленивую инициализацию в методе getLastAddedChild ()), или, возможно, скрыть свою коллекцию и использовать метод для добавлениядети к вашему объекту и т. д.
Как я уже говорил, спящие сущности - это Объекты.В хорошем ОО-дизайне с реальными объектами связано поведение.Я бы посоветовал вам провести исследование DDD (доменно-управляемый дизайн).