JPA:为了添加新关系,我必须获取所有OneToMany关系列表吗
假设我有实体A,A有B的列表,标记为OneToMany。为了将新的B项添加到A的列表中,我是否必须获取所有B项 例如:JPA:为了添加新关系,我必须获取所有OneToMany关系列表吗,jpa,spring-data-jpa,Jpa,Spring Data Jpa,假设我有实体A,A有B的列表,标记为OneToMany。为了将新的B项添加到A的列表中,我是否必须获取所有B项 例如: @Entity public class A { @Id Long id; @OneToMany List<B> bs; } @实体 公共A类{ @身份证 长id; @独身癖 名单b; } 我是否必须获取所有A.B以便将新项目添加到B 谢谢 阿隆 编辑 还有几个问题: @德国人:有趣!几个问题 如果A和B之间的连接是通过表C进行的
@Entity
public class A {
@Id
Long id;
@OneToMany
List<B> bs;
}
@实体
公共A类{
@身份证
长id;
@独身癖
名单b;
}
我是否必须获取所有A.B以便将新项目添加到B
谢谢
阿隆
编辑
还有几个问题:
@德国人:有趣!几个问题
您必须将b添加到A的b列表中。但发生的情况是特定于提供者的。当启用更改跟踪时,某些提供者(如EclipseLink)可以避免为延迟加载列表上的某些操作获取列表您必须将b添加到A的bs列表中。但发生的情况是特定于提供者的。当启用更改跟踪时,某些提供程序(如EclipseLink)可以避免为延迟加载列表上的某些操作获取列表如果B有一个@ManyToOne注释指向a,并且您将不使用该列表,则您可能只需要设置B对a的引用并将其持久化,而根本不需要接触实例。在数据库中,数据将被插入到表B中,但在内存中,A的列表将没有新元素。如果B有一个@ManyToOne注释指向A,并且您将不使用该列表,那么您可能只需要设置B对A的引用并将其持久化,而根本不需要接触实例。在数据库中,数据将插入表B,但在内存中,A的列表将不包含新元素