Google应用程序引擎Java和实体搜索
我正在用GAE Java开发一个web应用程序。我以以下方式创建了实体修复和线修复: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
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实体