gpt4 book ai didi

java - Google App Engine/Java - 不一致的 ORDER BY

转载 作者:行者123 更新时间:2023-11-30 09:46:08 26 4
gpt4 key购买 nike

我在 App Engine 上使用 JPA(我对两者都很陌生),我目前正面临一种我不理解的行为。

每次我刷新页面时,获取的项目的顺序都会改变。

这是代码片段:

Set<Cast> results = new HashSet<Cast>();
EntityManager entityManager = entityManagerFactory.createEntityManager();
Query query = entityManager.createQuery(FIND_ALL_SORTED_BY_DESCENDING_BROADCAST_DATE);
@SuppressWarnings("unchecked")
List<Cast> casts = query.getResultList();
for (Cast cast : casts) {
if (verifySecondaryFields(cast)) {
results.add(synchronizeTechnicalFields(cast));
}
}
entityManager.close();
return Collections.unmodifiableSet(results);

FIND_ALL_SORTED_BY_DESCENDING_BROADCAST_DATE 实际上是 SELECT cast FROM Cast cast ORDER BY cast.broadcastDate DESC

entityManagerFactory 是我的存储库类的 Autowiring 成员。

问题是 ORDER BY 子句似乎被忽略了,结果随机显示。你能发现哪里出了问题吗?

最佳答案

集合不保持顺序。 list 可以。尝试 List<Cast> = new ArrayList<Cast>();并从那里继续。

关于java - Google App Engine/Java - 不一致的 ORDER BY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7262153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com