Сохранение рекурсивных отношений с Hibernate в Java - PullRequest
2 голосов
/ 08 февраля 2012

У меня есть следующий класс:

public class MyItem {
  private Long id;
  private String name;
  private Set<MyItem> similarItems = new HashSet<MyItem>();

  // constructors
  // getters & setters
}

Это означает, что экземпляр MyItem содержит ссылки на другие элементы того же класса.

Я создал следующие таблицы со следующими столбцами:

[MyItem]:
 id
 name

[MyItemRelations]:
 myItemId  References MyItem
 myItemSimilarId References MyItem

Итак, у меня два вопроса:

  1. Правильна ли структура моих таблиц?
  2. Должен ли мой файл .hbm.xml выглядеть?Я не знаю, как реализовать это отношение.

1 Ответ

1 голос
/ 08 февраля 2012
<set name="similarItems" table="MyItemRelations">
    <key column="myItemId"/>
    <many-to-many column="myItemSimilarId" class="MyItem"/>
</set>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...