【问题标题】:AppEnginge JAVA SetOrdering Funaction is not workingAppEnginge JAVA SetOrdering 功能不起作用
【发布时间】:2014-04-27 13:51:43
【问题描述】:

AppEnginge JAVA SetOrdering 功能不起作用

Messages.java

@PersistenceCapable
public class Messages{

@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;

@Persistent
String name;

@Persistent
String Comments;

@Persistent
Date addedDate;

查询是

Query query = pm.newQuery(Messages.class);
query.setOrdering("addedDate desc");
List<Messages> results = (List<Messages>) query.execute();

还添加了索引

<datastore-indexes autoGenerate="false">
<datastore-index kind="Messages" ancestor="true">
<property name="addedDate"  direction="desc" />
</datastore-index>

结果未按预期出现。按 addedDate 排序。结果随机数据未按 addedDate 排序请帮忙?

【问题讨论】:

    标签: java google-app-engine jdo


    【解决方案1】:

    删除“消息”的索引定义。您无需为单个属性定义索引。

    尝试不为消息定义索引。你应该得到正确的结果。

    【讨论】:

    • 删除了索引定义并使用 vaccuume_indexes 清理了旧索引,但结果相同:(
    • 您在此处发布的代码是正确的。如果您仍然发现问题,那么它一定是在您的代码中的其他地方。
    • 是的,这是我的错误..我将结果存储在 HashSet 中,这就是结果随机出现的原因
    猜你喜欢
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 2021-08-27
    • 2013-01-31
    相关资源
    最近更新 更多