Поиск данных не в указанном порядке? - PullRequest
0 голосов
/ 11 ноября 2010

привет всем, что я использую Spring Framework и Hibernate для взаимодействия с базой данных. У меня есть таблица, содержащая некоторые записи, предположительно с идентификаторами 1,2,3,4,5, когда я пытался сделать HQL-запрос для получения данных, упорядоченныхДанные id asc извлекаются в правильном порядке, но при попытке зацикливания данных с расширенным циклом for порядок меняется, я не знаю, почему ???????

List<MyDTO> data = getCurrentSession()
                .createQuery(
                        "from MyDTO where indicator=:indicator order by entityId")
                .setLong("indicator", 10).list();
        System.out.println("First Id In The Query: "
                + data.get(0).getEntityId()); // prints 1

при создании цикла для них порядок меняется на

for (MyDTO myObj : data) {
System.out.println("Id: " + myObj.getEntityId());
}
// prints 5,4,3,2,1

есть идеи, почему такое поведение происходит?

1 Ответ

1 голос
/ 11 ноября 2010

asc - это порядок по умолчанию, поэтому вы можете его опустить.

В противном случае все должно работать как положено. Убедитесь, что вы выполняете список правильно.

...