Предположим, что у меня есть класс, сопоставленный спящим, с множеством свойств, идентификатором и отношениями «много-к-одному» и его именем является MyClass. То, что я пытаюсь сделать, это получить из базы данных всех записей, так что я такая вещь:Почему createCriteria возвращает столько объектов?
//omitted some code
Session session = sessionFactory.openSession();
List<MyClass> = session.createCriteria(MyClass.class).list();
Для одной записи в базе данных, критерии возвращает мне 13 объектов в списке. Я не могу понять, почему, хотя этот вопрос:
//omitted some code
Session session = sessionFactory.openSession();
List<MyClass> = session.createQuery("from MyClass").list();
Работает нормально и возвращает только 1 объект. Может ли кто-нибудь объяснить это мне?
Каких запросы SQL, порожденные спящим режимом в каждом дело? –
У MyClass есть свойство коллекции внутри (отношение «один ко многим»)? –
Возвращает ли один из следующих элементов: session.createCriteria (MyClass.class) .setResultTransformer (Criteria.DISTINCT_ROOT_ENTITY) .list()? –