Я думаю, что это зависит от отношений между сущностями в вашем приложении.В некоторых случаях я загружаю связанный экземпляр другого объекта в конструктор, но только в том случае, если у вас не было бы одного объекта без другого.
Одна альтернатива - лениво создавать объекты в геттере:
public class Country {
private City city;
public City getCity() {
if (this.city == null) {
this.city = new City();
}
return this.city;
}
}
Что касается вопросов PS, JSF не создает для вас объекты - я не уверен, чтобыть желательным ... но если вы используете ленивый подход, вы получаете то же самое.Hibernate сохраняет сущность, если ее экземпляр был создан, поскольку она сохраняет текущее состояние персистентной объектной модели, и если она не сохранила эту сущность, она не будет работать должным образом.
Обычно я не волнуюсьо нескольких пустых строках, которые я выбрал, чтобы использовать Hibernate, зная, что производительность ORM идет с небольшими затратами.Мне все еще стоит того, чтобы наслаждаться абстракцией настойчивости.