Spring Data JPA 與 MyBatis 對比,你喜歡用哪個?
閱讀本文大概需要 5 分鐘。
來自:jianshu.com/p/3927c2b6acc0
概述
Hibernate 與 MyBatis 簡單對比
面向對象考慮的是對象的整個生命周期包括在對象的創(chuàng)建、持久化、狀態(tài)的改變和行為等,對象的持久化只是對象的一種狀態(tài),而面向關系型數(shù)據(jù)庫的概念則更關注數(shù)據(jù)的高效存儲和讀?。?/section> 面向對象更強調對象狀態(tài)的封裝性,對象封裝自己的狀態(tài)(或數(shù)據(jù))不允許外部對象隨意修改,只暴露一些合法的行為方法供外部對象調用;而關系型數(shù)據(jù)庫則是開放的,可以供用戶隨意讀取和修改關系,并可以和其他表任意的關聯(lián)(只要sql正確允許的情況下); 面向對象試圖為動態(tài)的世界建模,他要描述的是世界的過程和規(guī)律,進而適應發(fā)展和變化,面向對象總是在變化中處理各種各樣的變化。而關系型模型為靜態(tài)世界建模,它通過數(shù)據(jù)快照記錄了世界在某一時候的狀態(tài),它是靜態(tài)的。
Hibernate 使用步驟
分析、抽象和歸納出系統(tǒng)中的業(yè)務概念,并梳理出各個業(yè)務概念之間的關系——創(chuàng)建概念模型 根據(jù)概念模型,進一步細化設計系統(tǒng)中的對象類以及類的依賴關系——創(chuàng)建設計模型 將設計好的類映射到數(shù)據(jù)庫的表和字段配置好 hibernate可以根據(jù)配置信息自動生成數(shù)據(jù)庫表,這個時候也可以集中精力去梳理一下表關系,看看表結構是否合理,并適當調整一下類和表的映射關系,重新生成表結構
MyBatis 是使用步驟
綜合整個系統(tǒng)分析出系統(tǒng)需要存儲的數(shù)據(jù)項目,并畫出E-R關系圖,設計表結構 根據(jù)上一步設計的表結構,創(chuàng)建數(shù)據(jù)庫、表 編寫MyBatis的SQL 映射文件、Pojos以及數(shù)據(jù)庫操作對應的接口方法
小結
推薦閱讀:
最近面試BAT,整理一份面試資料《Java面試BATJ通關手冊》,覆蓋了Java核心技術、JVM、Java并發(fā)、SSM、微服務、數(shù)據(jù)庫、數(shù)據(jù)結構等等。
朕已閱 
評論
圖片
表情

