簡體   English   中英

為什么在 Java 應用程序中使用 JPA Hibernate Metamodel 類?

[英]Why JPA Hibernate Metamodel classes are used in Java app?

我正在開發一個 Java 應用程序,有幾個元模型類,例如“Company_”。 但是,這些都在目標文件夾中,我想知道為什么要使用它們,因為其他文件(例如“公司”)也將在目標文件夾中構建和生成。 那么,在 Java 應用程序中使用 JPA Hibernate Metamodel 類的目的是什么。

任何解釋將不勝感激。

那么,在 Java 應用程序中使用 JPA Hibernate Metamodel 類的目的是什么。

為什么我們需要你問的元模型類?

它們是一個內部細節,可以實現標准查詢的類型安全。 它們是達到目的的手段。 這就是標准查詢的類型安全。 如果這可以通過更簡單的方式實現,沒有這些額外的類,那么這樣做是理想的。 更少的類 -> 使用更少的 RAM -> 更少的類加載 -> 更少的啟動時間。

具體來說,這是這樣做的動機......

當您編寫條件查詢或創建動態實體圖時,您需要引用實體類及其屬性。 最快和最簡單的方法是提供所需的名稱作為字符串。 但這有幾個缺點,例如,您必須在編寫查詢時記住或查找實體屬性的所有名稱。 但是,如果您必須重構實體並更改某些屬性的名稱,它也會在項目的后期階段引起更大的問題。 在這種情況下,您必須使用 IDE 的搜索功能並嘗試查找所有引用已更改屬性的字符串。 這是一項乏味且容易出錯的活動,很容易占用重構的大部分時間。

您可以在此處查找更多詳細信息

如果您想深入了解為什么選擇這樣的實現來實現這一目標,您可以查看原始Java 規范請求並獲得所有詳細信息。

這能解決您的問題嗎? 在評論中告訴我。

暫無
暫無

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

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