有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java排序谷歌应用程序引擎

我希望从GAE获得特定Merchant下的预约列表,并根据预约日期和时间进行排序(dateLog):

PersistenceManager pm = PMF.get().getPersistenceManager();
String query = "select from " + Appointment.class.getName();  
query += " where merchant == '" + session.getAttribute("merchant") + "'";
query += " order by dateLog desc range 0,5";
List<Appointment> appointment = (List<Appointment>) pm.newQuery(query).execute(); 

但是,它返回了错误,我已经检查/重复检查了很多次,但都没有结果。有人能帮忙吗?我被难住了


共 (2) 个答案

  1. # 1 楼答案

    如果在上传到App engine服务器之前测试URL,则索引文件将自动生成。在development server中运行并点击显示错误的URL,它将生成文件,当您部署到App engine server时,将生成索引,还有一件事,您需要时间才能在Google App engine管理控制台的数据存储索引(构建和服务)中看到

  2. # 2 楼答案

    您应该在应用程序的war/目录中的WEB-INF/datastore-indexes.xml中指定数据存储的建议索引。XML如下所示:

    <?xml version="1.0" encoding="utf-8"?>
    <datastore-indexes  autoGenerate="true">
      <datastore-index kind="Appointment" ancestor="false" source="manual">
        <property name="merchant" direction="asc"/> 
        <property name="dateLog" direction="desc"/> 
      </datastore-index>
    </datastore-indexes>
    

    参考:https://developers.google.com/appengine/docs/java/config/indexconfig