這似乎一些人的愚蠢的問題,但我找不到任何資訊的任何地方,為什么我們要使用映射(@OneToOne,@OneToMany在JPA當定義物體類等)。我知道優點之一是代碼減少,這樣我們就不必顯式撰寫查詢來從關系表中獲取資料。但是我們還有其他好處(從 SQL 端的代碼優化角度來看)嗎?
uj5u.com熱心網友回復:
原因是加載物件樹或圖形。
這就是物件關系映射的目標,以填補資料庫表和物件之間的空白。
正如你所說,它減少了代碼。
uj5u.com熱心網友回復:
總之,ORM 的想法是將表映射到物件,因此開發人員使用物件而不是表。
SQL 中的表通過鍵列建立關系。在 JPA 中,這些關系通過 @OneToMany、@OneToOne 等表示。
這意味著,如果您想從一個表中獲取一行并將其與另一個表中的相應行(通過關系)連接起來,JPA 實作(主要是 Hibernate)可以為您做到這一點,查看您為物體定義的關系.
您需要描述物體關系,因為它是您映射到應用程式級別物件的 DB 模式模型的一部分。正如您所提到的 - 它可以節省您自己撰寫 SQL 查詢的時間,但這不是重點。
要點是您可以將一個域(資料庫表、行、關系、SQL 命令)建模/表示為另一種型別的域(物件/類、OOP 范式、編程語言命令),這完全改變了您使用它的方式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/366566.html
