【问题标题】:Spring DATA JPA @ManyToOne : foreign key is nullSpring DATA JPA @ManyToOne:外键为空
【发布时间】: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


    【解决方案1】:

    也许你只添加@JoinColumn(foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 2020-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-16
      • 1970-01-01
      相关资源
      最近更新 更多