如何正确更新一对多Hibernate关系中的表(通过一个请求)



我通过Hibernate使用Postgresql,有三个表:用户、产品、用户_产品。以下是它们的映射

@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Column(nullable = false)
@NotBlank
private String name;

@OneToMany(cascade = CascadeType.ALL)
private List<Products> product;
}

@Entity
public class Product{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Column(nullable = false)
@NotBlank
private String name;

@Column(nullable = false)
private Integer price;
}

我知道我可以通过id获取用户,然后更新其字段";产品";然后将用户保存回。但是,是否可以通过Hibernate(或使用原始sql查询(通过一个请求完成所有这些工作?

我会创建一个单独的实体UserProduct并保存它。

这是不是有什么原因不起作用?

最新更新