亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java Persistence API 的陷阱是怎樣的

發布時間:2021-11-20 16:21:47 來源:億速云 閱讀:117 作者:柒染 欄目:編程語言

Java Persistence API 的陷阱是怎樣的,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

JPA是Java EE 5很重要的一部分,它的采用大大簡化了Entity Bean的使用。但JPA有一個很明顯的缺陷,就是無原則地采用JPA,就有可能將數據庫結構移植到你的應用程序的代碼中。這將給應用程序的維護和升級帶來麻煩。

小編講的“無原則地采用JPA”,主要指通過Annotation對Entity Bean之間的關系進行定義。這些數據實體的關系,如一對多,一對一,多對一,多對多及關聯操作(cascade)等,很明顯是數據庫概念。為了實現ORM的目的,JPA不得不將其在Entity源代碼中定義這種關系。

這在很大程度上,將數據庫的結構與設計移植到了應用程序中。這有以下幾個問題:

一,應用程序源代碼可讀性差數據庫結構的復雜程度,幾乎完全取決于應用的業務邏輯。如果業務邏輯復雜,對Entity Bean的關系定義將很困難。可以想象,其代碼的可閱讀性將很差。

二,應用程序的可維護性差一旦數據庫結構因業務需求而發生變化,這些關系將需要重新定義。

三,對較復雜的數據庫結構關系進行定義幾乎是不現實的這也是ORM本身的局限性。將數據庫結構移植到應用程序中本身就是個錯誤方向。關系數據庫主要在于“關系”二字,因為數據庫關心的是數據及其完整性(Data)。而應用程序采用OOP的開發手段,關心的是系統內部各“物件(Object)”的動作(Operation)。數據是應用程序的狀態;動作是應用程序的業務邏輯。狀態和動作是構成應用程序的兩大要素,二者缺一不可。而ORM試圖忽視狀態而抬高動作,豈不知“動作”的最終結果要落實在“狀態”的改變上。

關于Java Persistence API 的陷阱是怎樣的問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昌图县| 辽阳市| 庄浪县| 无为县| 太湖县| 太和县| 来宾市| 顺昌县| 桂林市| 长岛县| 会东县| 广东省| 遂昌县| 巩义市| 泗阳县| 信宜市| 茂名市| 皮山县| 白朗县| 洛南县| 曲麻莱县| 宜丰县| 郸城县| 潼南县| 汤阴县| 仙桃市| 云和县| 阿拉尔市| 西充县| 金山区| 鹿泉市| 湛江市| 台安县| 新丰县| 麟游县| 定陶县| 收藏| 博兴县| 渭源县| 抚顺县| 监利县|