我想問你一個我應該如何做下一件事的例子:我有 2 個模型類,我們稱它們為 A 類和 B 類,每個 A 類物件都有一個 B 類物件。
我構建了一個 react 客戶端和一個 springboot java api 來在 mysql db 中保存新的 A 類物件。
現在我必須處理B類物件,理想情況是將A類物件保存在db中,獲取id,然后在另一個表中創建一個B類物件,其id與其對應的A類物件相同目的。
我可以輕松做的是:在前端,呼叫 api 以保存 A 類物件,等待回應獲取其 id,然后再次呼叫另一個 api 以保存 B 類物件,但我認為這是有風險的,因為呼叫之間可能會發生某些事情,并且 B 類物件最終可能不會被保存。
你能建議我如何解決這個問題嗎?
uj5u.com熱心網友回復:
您應該了解 hibernate 的映射概念,如果您正在使用 hibernate,請使用 @OneToOne 映射。你可以輕松解決這個問題,一旦你應用映射,處理資料就會變得非常容易,因為 hibernate 處理這些事情,你也可以通過定義它的級聯型別來配置映射模型類的操作,你可以參考這個視頻一對一映射理解映射尤其是一對一映射。
class A{
@OneToOne(cascade = CascadeType.All, fetch = FetchType.Eager)
@JoinColumn(name = "b_id")
private B b;
}
這是一種單向關系,您也可以根據您的應用程式需要使其成為雙向關系。
uj5u.com熱心網友回復:
這可以在一個類與另一個類的一對一關系的幫助下完成。
使用@OnetoOne 注釋。您也可以參考此了解有關休眠映射的更多資訊。
另外,請檢查這個https://www.javatpoint.com/hibernate-one-to-one-example-using-annotation。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/336583.html
