0

我得到一个@Entity查询的 es 列表(所谓的主要实体)。我必须用来自不同查询/实体的值填充这些实体中的一些瞬态字段。因此,这些瞬态字段中的每一个都需要来自主实体的不同字段组合,并且基于此我应该运行查询并填充瞬态字段。这些是通过 3 到 4 种不同的方法完成的。

我的问题是,就性能和实践而言,更好的方法是什么?

  1. 将主要实体列表(可能是 100 秒)传递给这些方法中的每一个,并让它们填写在方法中或
  2. 根据每个方法所需的字段创建一个对象并取回结果并填充实体?

当您将实体传递给方法时,您不是在创建副本,您只是在传递原始列表?没有性能相关的问题?

4

1 回答 1

1

除了原始类型之外,作为参数传递给方法的每个对象都作为引用传递。因此,如果您将List<EntityClass>对象传递给您的方法,您将不会创建实体的副本。

如果没有其他理由不这样做,我会选择选项 1 并将实体列表传递给方法。

于 2013-07-06T22:34:40.723 回答