Преобразование списка идентификаторов в список объектов с помощью ORM, например Hibernate - PullRequest
3 голосов
/ 02 февраля 2011

В веб-приложениях обычно отправляется список идентификаторов на сервер при выборе элементов коллекции.Может существовать HTML-форма, представляющая курс, и она будет содержать список всех студентов семестра.При выборе некоторых студентов они будут связаны с курсом.Сервер получит список идентификаторов студентов.

Как лучше преобразовать этот список идентификаторов (первичные ключи в БД) в список объектов домена с ORM, подобным Hibernate?Я хотел бы избежать повторного написания одного и того же кода для каждого класса домена. Grails делает что-то подобное (но я не знаю как).

1 Ответ

4 голосов
/ 02 февраля 2011

поэтому у нас есть общий DAO с таким методом

public <T extends IDomainObject> List<T> getAll(Class<T> type, List<Integer> ids) {
    return (List<T>) session.createCriteria(type).add(Restrictions.in("id", ids).list();
}

По соглашению все наши объекты модели домена реализуют IDomainObject и имеют поле первичного ключа с именем id.

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