Apache Cayenne-批处理关系设置

时间:2018-10-24 16:05:46

标签: java apache-cayenne

我想知道Apache Cayenne是否有一种方法可以使用其.setTo方法来设置关系,而无需每次调用​​该方法时一次拉一个对象。我正在处理数千行数据,每次建立关系时,它都要查询对象,这要花几毫秒的时间,而使用如此庞大的数据集则要花几分钟的时间。

我尝试过仔细阅读他们的文档,但是其中很多都被抽象掉了,这使得很难在他们的确切信息中找到我想要的东西。不胜感激!

1 个答案:

答案 0 :(得分:0)

惯用的解决方案是,如果您希望访问很大一部分列表对象的关系,则在运行查询时显式地prefetch all relationships:给您原始对象列表:

List<Artist> objects = ObjectSelect.query(Artist.class)
    .prefetch(Artist.PAINTINGS.joint())
    .select(context);