我想删除company_id为“****”而gamer_id为“****”的记录。 如何为此编写查询。
public List<CompanyGamer> unfollowcompany(CompanyGamerForm CompanyGamerForm) throws NotFoundException {
String company_id = CompanyGamerForm.getCompany_id();
String gamer_id = CompanyGamerForm.getGamer_id();
Iterable<Key<CompanyGamer>> allKeys = ofy().load().type(CompanyGamer.class).filter("company_id=", company_id).filter("gamer_id=", gamer_id).keys();
ofy().delete().keys(allKeys); }
请让我知道应该定义什么作为回报?
查看“执行查询”部分底部的 Objectify 查询文档 https://github.com/objectify/objectify/wiki/Queries。 “您可以只查询键,这将比获取整个对象更有效地返回 Key 对象”
Iterable<Key<Gamercompany>> allKeys = ofy().load().type(Gamercompany.class).filter("company_id=", compnyid).filter("gamer_id=",gamer_id).keys();
然后就可以删除该键对应的所有实体了:
ofy().delete().keys(allKeys);
或者,如果您确实想执行返回实体而不是键的查询,您可以迭代查询并执行以下操作:
ofy().delete().entity(thing); // asynchronous
或
ofy().delete().entity(thing).now(); // synchronous
但是效率会比第一种方式低。