【发布时间】:2021-08-23 23:38:28
【问题描述】:
我通过 Hibernate 使用 Postgresql,有三个表:users、products、user_products。这是他们的映射
@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 查询)完成所有这些工作?
【问题讨论】:
-
请定义您的 user_products 表。您是否尝试插入新的并更新现有的并删除丢失的?
-
@user 我正在尝试为特定用户添加新产品。换句话说,我想为用户更新 List
产品。表 user_products 是由 hibernate 创建的,用于保存用户与其产品之间的关系
标签: java sql postgresql hibernate