Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在hibernate中仅在OneToMany关系中添加一个实体_Java_Hibernate_Jpa - Fatal编程技术网

Java 如何在hibernate中仅在OneToMany关系中添加一个实体

Java 如何在hibernate中仅在OneToMany关系中添加一个实体,java,hibernate,jpa,Java,Hibernate,Jpa,有两个表,一个是客户表,另一个是产品表,正如您所知,客户和产品有一个共同的关系,如下所示 在客户实体中 private Set<Product> products; 我认为仅仅为了添加一个新实体而从数据库中获取所有产品的过程非常繁重,hibernate中还有其他方法吗?如果使用双向映射使产品具有客户属性,则可以单独保存产品 private Customer Customer; dao.Save(new Product(Customer, id, name, price)); 这

有两个表,一个是客户表,另一个是产品表,正如您所知,客户和产品有一个共同的关系,如下所示

在客户实体中

private Set<Product> products;

我认为仅仅为了添加一个新实体而从数据库中获取所有产品的过程非常繁重,hibernate中还有其他方法吗?

如果使用双向映射使产品具有客户属性,则可以单独保存产品

private Customer Customer;

dao.Save(new Product(Customer, id, name, price));

这显然破坏了你的聚合根…

使用列表或包代替。从:

我们可以在不需要初始化的情况下将元素添加到包或列表中 (取回)包元素

private Customer Customer;

dao.Save(new Product(Customer, id, name, price));