Рекурсивное отображение HBM - PullRequest
0 голосов
/ 03 мая 2011

Могу ли я сделать следующее в моем отображении HBM?

<class name="Employee" table="employees">
    <!-- assume that each person only has exactly one supervisor -->
    <many-to-one name="supervisor" class="Employee" column="supervisorId" />
</class>

Когда я использую вышеуказанное отображение HBM, мой сервер отказывается запускаться со следующей ошибкой:

org.hibernate.InstantiationException: could not instantiate test object Employee
Caused by: java.lang.StackOverflowError
at Employee.<init>(Employee.java:11)
at Employee.<init>(Employee.java:11)
at Employee.<init>(Employee.java:11)
...... (about a hundred duplicates)

line11 из Employee.java просто говорит:

public class Employee implements Serializable {

Как мне моделировать отношения между руководителем и сотрудником?Не существует специального POJO для супервизора, и у объектов супервизора нет специальных полей.

1 Ответ

1 голос
/ 03 мая 2011

Hibernate не должен иметь проблем с отображением таких отношений.

Похоже, что бесконечная рекурсия вызвана ошибкой в ​​вашем коде, что-то вроде этого:

public class Employee {
    private Employee supervisor = new Employee();
}
...