0
我在Hibernate(5.1)上,我需要将元素添加到符合条件的所有实体上的集合字段,而无需全部获取它们。JPA将元素添加到使用CriteriaUpdate的集合
@Entity
public class Order {
@Id
public Long id;
public Date placedOn;
@ManyToMany
public List<Item> items;
}
我需要添加一个新的Item
同一实例的所有Order
S置于一个特定日期之后。我需要使用Criteria API,而不是JPQL。
这可能吗?我找不到这方面的文档。
P.S.订单/商品的情况只是一个例子,我正在寻找一种广义的方法,我还需要调整它以从集合中移除项目。
我很害怕这个。我知道它不是SQL UPDATE,但我认为JPA有某种JPQL UPDATE Order o INSERT:item INTO o.items和它的相对Criteria方法。由于在他们的发作版中,JPA实现在更新集合字段时执行这些'INSERT',我希望他们也提供了让用户以编程方式执行这些操作的方法... –
不,它不能这样做。因为你不能在一个SQL语句中这样做。 –
JPA没有神奇,它只是另一种查询语言,最终转换为SQL –