НГ>[/java]то получаем "Ба-бах". Это так и должно быть? Ведь, если получать Foo через запрос, то даже если у него нет детей, foo.getChildren() отдаст коллекцию с size()==0, но не null.
да, так и должно быть. вызов session.save() не изменяет сохраняемый объект (разве что асайнит id), и коллекции остаются в том же состоянии, что после конструктора.
НГ>[/java]ба-бах, размер коллекции детей у parent-а не изменился. Это так тоже должно быть?
да, так и должно быть. вызов session.save() не добавляет в коллекции объект везде где только можно. Ты сам должен распихать его по коллекциям.
НГ>[/java]Тут парент получается не персистентный и его приходится апдейтить. Это нормально?
если этот код просто продолжение примера #2, то нормально. Кстати, вызов session.save() не пишет объект в БД