Hibernate: отобразить последнюю строку отношения @OneToMany - PullRequest
0 голосов
/ 27 сентября 2011

У меня есть связь между элементом и его именами.Все исторические имена, как и текущие, находятся в таблице «element_name», в которой есть поле «create».Последней созданной строкой является текущее имя элемента.

Как можно сопоставить текущее имя элемента как свойство элемента?

class Element implements Serializable {

    @OneToMany(fetch = FetchType.LAZY)
    private List<ElementName> historyOfElementNames;

    // What annotations should be used here?
    private ElementName currentElementName;

    ...
}

Заранее спасибо!

1 Ответ

0 голосов
/ 27 сентября 2011

Альтернативой вашему решению было бы сопоставить все имена в списке, отсортировать этот список и затем получить текущее имя как elementNames.get(elementNames.size() - 1).

Чтобы включить это, добавьте также аннотацию @IndexColumnв качестве фактического индекса столбца и индексов.Таким образом, вы также получаете порядок смены имени.

Редактировать: начиная с Hibernate 3.5 @IndexColumn, кажется, переименован в @OrderColumn.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...