В отношении отношений между родителем и ребенком, когда (и почему) вы бы использовали интерфейс DAO только для родителя, а когда вы бы также сделали DAO для детей? Для меня имеет смысл сделать DAO для родителя, только если дети ДОЛЖНЫ принадлежать родителю и не должны существовать как сироты.
Таким образом, если бы я хотел удалить Child, я бы изменил Set of Children родителя и вызвал parentDAO.update (parent).
Кроме того, в целом, есть ли какие-нибудь хорошие сайты / книги для лучших практик Hibernate (т.е. не изучать Hibernate или начальные примеры)?