【发布时间】:2022-11-15 15:15:58
【问题描述】:
当我要完美保存订单但订单表外键始终为空时!
我正在使用 Mysql 数据库。
这是我的实体关系:
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Data
@Table(name = "orders")
public class Order implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int orderID;
private double total;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "userID", referencedColumnName = "username")
private User userID;
@OneToMany(mappedBy = "order", fetch = FetchType.LAZY)
private List<OrderDetails> orderDetails;
}
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Data
@Table(name = "orderdetails")
public class OrderDetails {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int orderDetailsId;
private int qty;
@OneToOne
@JoinColumn(name = "productId", referencedColumnName = "productId")
private Product productId;
@ManyToOne
@JsonIgnore
@JoinColumn(name = "orderId", referencedColumnName = "orderID")
private Order order;
}
所有主键都是自动生成的。
【问题讨论】:
标签: java spring-boot spring-data-jpa relational-database