Я начинаю свой первый проект с Hibernate 4.2.21 и сначала с JPA 2.0, я хочу создать отношения OneToMany Unipirectional. Я видел много примеров в версии Hibernate 3, но не так много в 4.2.21. Этот пример работает отлично, но я не знаю, хорошая ли практика, я хочу узнать мнение других членов об этом?Hibernate 4.2, JPA 2.0 Отношения OnetoMany Однонаправленный с аннотациями
Отношения Одна ко многим:
-Parent Шаблон:
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "template_id")
private Set<Variable> variables = new LinkedHashSet<Variable>();
-Child: Переменная
@Column(name = "template_id", nullable = false)
Integer templateId;
Ребенок обычно не должен иметь идентификатор своего родителя. Если необходимо, чтобы ребенок знал своего родителя, тогда вместо этого сделайте его двунаправленной ассоциацией. –
В моем случае нет необходимости, чтобы ребенок знал отца, а затем, чтобы применить хорошую практику, нужно только удалить ссылку у ребенка? – Miofino
Да. Поле templateId не нужно. Также обратите внимание, что хотя вы инициализируете набор с помощью 'new LinkedHashSet()', Hibernate не будет использовать эту реализацию набора и не будет сохранять порядок вставки в любом месте. Поэтому не ожидайте, что переменные в наборе будут в любом конкретном порядке в сущности, загруженной Hibernate. –