Google应用程序引擎Java和实体搜索

Google应用程序引擎Java和实体搜索,java,google-app-engine,Java,Google App Engine,我正在用GAE Java开发一个web应用程序。我以以下方式创建了实体修复和线修复: public static void createOrUpdateRiparazione(Key key, String plate, String mechanicname, String type, String km, String description, String date, String price, String qta) { Transaction t

我正在用GAE Java开发一个web应用程序。我以以下方式创建了实体修复和线修复:

public static void createOrUpdateRiparazione(Key key, String plate,
        String mechanicname, String type, String km, String description,
        String date, String price, String qta) {
    Transaction txn = Util.getDatastoreServiceInstance().beginTransaction();

    try {

        Entity repair = new Entity("Repair", key);
        repair.setProperty("plate", plate);
        repair.setProperty("date", date);
        repair.setProperty("status", "Created");
        repair.setProperty("km", km);
        repair.setProperty("mechanic", mechanicname);
        Util.getDatastoreServiceInstance().put(repair);

        Entity lineRepair = new Entity("LineRepair", repair.getKey());
        lineRepair.setProperty("type", type);
        lineRepair.setProperty("description", description);
        lineRepair.setProperty("price", price);
        lineRepair.setProperty("qta", qta);
        lineRepair.setProperty("repairID",
                String.valueOf(repair.getKey().getId()));
        Util.getDatastoreServiceInstance().put(lineRepair);

        txn.commit();
    } finally {
        if (txn.isActive()) {
            txn.rollback();
        }
    }
}
鉴于车牌和维修日期,现在我不想搜索汽车的维修情况。这是因为我想添加一个条件,即如果在该日期已经有修复,则添加LineRepair。我使用的是util类。有实体汽车和用户。谢谢你的帮助


编辑:他们传递的密钥是汽车的密钥

您需要有一个包含车牌和维修日期的复合索引,然后是一个查询给定车牌和维修日期值的维修实体的函数。如果得到查询的响应,请对查询结果使用getkey(),并将其传递给函数以创建相应的linerepair实体