簡體   English   中英

帶有連接和外鍵的休眠插入

[英]Hibernate insert with join and foreign key

我在休眠狀態下有一些問題。

假設我有2個實體

@Entity
public class User{
    @Id
    @GeneratedValue
    int user_id;

    String name;

    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    @JoinColumn(name = "utente_id")
    list<City> cities;
}

@Entity
public class City{
    int user_id
    int city_id
}

如果我嘗試創建用戶類並添加城市列表,但是在嘗試保存時收到此錯誤:

原因:java.sql.SQLException:發生了外鍵約束沖突

這是因為user_idCity必須等於user_idUser ,但冬眠先插入,然后更新。 我該如何旋轉?

首先嘗試將User對象持久保存到DB。 只有堅持不懈,您才能獲得user_id的生成值。

然后,您可以創建City對象,設置user_id字段並保留它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM