【发布时间】:2018-11-30 18:51:14
【问题描述】:
假设我有一个名为PersonAnimal 的桥接表。我想搜索所有具有给定动物 ID 的人。到目前为止的查询如下所示:
Animal animal = getById(Animal.class, animalId)
ObjectSelect
.query(PersonAnimal.class)
.where(PersonAnimal.ANIMAL.eq(animal))
.select(context)
然而,上述代码段中的第一行表明我首先必须从数据库中检索相关对象。我想摆脱那个数据库查找,而是做类似的事情:
ObjectSelect
.query(PersonAnimal.class)
.where(PersonAnimal.ANIMAL_ID.eq(animalId)) // <- Find by ID instead
.select(context)
这可能吗?
我正在运行 Apache Cayenne ORM 4.1 版。
【问题讨论】:
-
4.1版到底是什么?您是否尝试阅读:cayenne.apache.org/docs/3.0/objectidquery.html?
-
@sofend:抱歉,我没有添加 Apache Cayenne。关于您的链接,我确实看过,但那是为了按 ID 查找一个对象,而不是按 ID 查找对象列表。
标签: java kotlin orm apache-cayenne