Java ORM框架


  • ORM 是 Object Relational Mapping 的縮寫,譯為“對象關系映射”框架。
  • ORM 框架就是一種為了解決面向對象與關系型數據庫中數據類型不匹配的技術,它通過描述 Java 對象與數據庫表之間的映射關系,自動將 Java 應用程序中的對象持久化到關系型數據庫的表中。
  • ORM 框架是一種數據持久化技術,即在對象模型和關系型數據庫之間建立起對應關系,並且提供一種機制,可通過 JavaBean 對象操作數據庫表中的數據。
  • ORM 可以在對象模型和關系型數據庫的表之間建立一座橋梁,程序員使用 API 直接操作 JavaBean 對象就可以實現數據的存儲、查詢、更改和刪除等操作。
  • 常用的ORM框架有Hibernate和MyBatis,也就是ssh組合和ssm組合中的h與m
  • Hibernate 框架是一個全表映射的框架。通常開發者只要定義好持久化對象到數據庫表的映射關系,就可以通過 Hibernate 框架提供的方法完成持久層操作。
  • 開發者並不需要熟練地掌握 SQL 語句的編寫,Hibernate 框架會根據編制的存儲邏輯,自動生成對應的 SQL,並調用 JDBC 接口來執行,所以其開發效率會高於 MyBatis 框架。
  • Hibernate框架自身也存在一些缺點導致其只適合在場景不太復雜且對性能要求不高的項目中使用。
  • MyBatis 框架是一個半自動映射的框架。這里所謂的“半自動”是相對於 Hibernate 框架全表映射而言的,MyBatis 框架需要手動匹配提供 POJO、SQL 和映射關系,而 Hibernate 框架只需提供 POJO 和映射關系即可。
  • MyBatis 框架可以配置動態 SQL 並優化 SQL、通過配置決定 SQL 的映射規則,以及支持存儲過程等。對於一些復雜的和需要優化性能的項目來說,顯然使用 MyBatis 框架更加合適。
  • MyBatis 框架可應用於需求多變的互聯網項目,如電商項目;Hibernate 框架可應用於需求明確、業務固定的項目,如 OA 項目、ERP 項目等。
  • 參考鏈接 :http://c.biancheng.net/view/8117.html
  • JDBC    最底層技術規范(相對於JPA而言)     定義:java語言連接關系數據庫進行SQL操作的規范,各個數據庫廠商實現了該規范(JDBC驅動程序)。
  • MyBatis 定義:基於java實現的SQL映射框架,封裝了JDBC操作。完成的是SQL到方法,實現是半自動化的。
  • Hibernate(冬眠)定義:基於java實現的ORM(對象關系映射)框架,封裝了JDBC操作。 類直接映射表,實現是自動化的,高度封裝。
  • JDBC,JPA  都是 Java 語言中定義的技術規范,JDBC 連接關系數據庫,執行 SQL 語言,JPA 建立在 JDBC 之上,封裝 JDBC ,JPA 的方法操作,底層是 JDBC。
  • JDBC是一個規范,其分為兩個部分:廠商:完成數據庫驅動 、 Java開發者:調用統一接口
  • 參考鏈接 :https://blog.csdn.net/cureking/article/details/112005023
  • JDBC是技術規范,實現:mysql,db2,oracle,postgreSQL
  • JPA是一套規范對象關系映射的規范,具體實現框架:hiberbnate,topLink
  • 應用 JDBC 和JPA 的優缺點 :
  • 參考鏈接 :https://blog.csdn.net/metjoyful/article/details/101061476


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM