【发布时间】:2010-11-11 12:17:07
【问题描述】:
大家好 我正在使用spring框架和hibernate与数据库进行通信 我有一个包含一些记录的表,假设 ID 为 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 循环时,顺序是相反的
for (MyDTO myObj : data) {
System.out.println("Id: " + myObj.getEntityId());
}
// prints 5,4,3,2,1
任何想法为什么会发生这种行为?
【问题讨论】:
-
以上似乎是正确的。之后你能展示你对列表的处理吗?
-
在列表上做一个简单的for循环来sysout每个对象的id
-
@Gary Rowe,我编辑了上面的帖子,有什么帮助吗?
标签: hibernate spring-mvc jakarta-ee