一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Hibernate中5個核心接口知識點整理

Hibernate中5個核心接口知識點整理

2021-12-01 13:07技術之家 Java教程

在本篇文章里小編給大家整理的是一篇關于Hibernate中5個核心接口知識點整理等內容,有興趣的朋友們跟著學習參考下。

Hibernate是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執行,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫,同時Hibernate作為持久層中間件,它的具體實現對與上層調用是透明的,即上層通過接口來調用Hibernate的具體實現,所以對于入門級別的討論來說,自然應該先從接口開始了。

1.Configuration核心接口

在Hibernate應用中通過Configuration的實例來指定對象-關系映射文件或通過Configuration動態配置Hibernate的屬性,然后通過Configuration來創建相應的SessionFactory實例。所以Configuration主要作用是配置并啟動Hibernate。

2.SessionFactory核心接口

在Hibernate應用中一個SessionFactory對應一個數據源,它是個重量級對象(注意:不可隨意生成多個實例,對于一般的單數據庫應用來說,只需要一個SessionFactory就足夠了,當然如果有多個數據庫的話,還是需要為每個數據庫生成對應的SessionFactory);它是線程安全的,同一個實例可以被應用中的多個線程共享;同時SessionFactory存放了大量預定義的SQL語句以及映射元數據,則需要很大的緩存了,也需要一定的CPU時間來計算生成。
注:通過Mapping文件的定義,很多SQL語句就已經確定了,只需要動態生成一次就可以了,提高持久化的效率。

3.Session核心接口

Session接口是Hibernate應用中使用最廣泛的接口了,它是持久化管理器,提供添加、更新、刪除、加載、查詢對象。Session不是線程安全的,所以應避免多個線程共享同一個Session實例。Session是輕量級對象,它的創建和銷毀不需要太多資源,這意味著在應用中可以經常創建和銷毀Session對象。
Session有一個緩存,稱之為Hibernate的一級緩存,它存放當前工作單元加載的持久化對象,每個Session都有自己的緩存,緩存中的對象只能被當前工作單元訪問。
注:Session實例是從SessionFactory中可以獲得。

4.Transaction核心接口

Transaction是Hibernate的數據庫事務接口,它對底層道德事務接口進行了封裝,底層事務接口包括:
JDBC API
JTA(Java Transaction API)
CORBA(Common Object Requet Broker Architecture) API
Hibernate應用可以通過一致Transaction接口來聲明事務邊界,這有助于應用可以在不同的環境或容器中移植。具體的事務實現使用在Hibernate.properties中進行指定。

5.Query和Criteria核心接口

這兩個是Hibernate的查詢接口,用于向數據庫查詢對象,以及控制執行查詢的過程。Query實例包裝了一個HQL(Hibernate Query Language)來查詢。Criteria接口完全封裝了基于字符串形式的查詢語句,比Query更面向對象,Criteria更擅長執行動態查詢。

總結

1、Configuration:配置hibernate,創建SessionFactory對象。

2、SessionFactory:初始化hibernate,充當數據存儲源的代理,創建Session對象。

3、Session:負責保存,更新,刪除。加載和查詢對象。

4、Transaction:管理事務。

5、Query和Criteria:執行數據庫的查詢。

到此這篇關于Hibernate中5個核心接口知識點整理的文章就介紹到這了,更多相關關于Hibernate中5個核心接口介紹內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:http://www.jszja.com/contents/14/2763.html

延伸 · 閱讀

精彩推薦
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程Java BufferWriter寫文件寫不進去或缺失數據的解決

    Java BufferWriter寫文件寫不進去或缺失數據的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數據的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩中求8032021-07-12
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

    這篇文章主要介紹了xml與Java對象的轉換詳解的相關資料,需要的朋友可以參考下...

    Java教程網2942020-09-17
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發現了對于集合操作轉換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7482021-02-04
主站蜘蛛池模板: 欧美日韩视频在线成人 | 操久久| 成人免费视频一区二区 | 国产一级免费片 | 范冰冰好紧好滑好湿 | 韩国伦理hd| www免费插插视频 | 果冻传媒九一制片厂网站 | 91久久国产成人免费观看资源 | 日本免费全黄一级裸片视频 | 国产亚洲精品aaa大片 | 国产 日韩 欧美视频二区 | 精品一区二区三区高清免费不卡 | 男人的天堂在线观看入口 | 99在线观看免费视频 | www.青草视频 | 五月色天在线视频综合观看 | 操美女b| 2020国产精品视频 | 国产精品永久免费自在线观看 | 视频一区在线观看 | 欧美高清片 | 日本免费在线观看视频 | 91精品乱码一区二区三区 | 秀逼逼| 疯狂伦交1一6小说 | 深夜激情网站 | 麻豆网站在线观看 | 欧美1| 亚洲视频在线一区二区三区 | 午夜一级 | 动漫人物差差差动漫人物免费观看 | 大象传媒1234区 | 亚洲AV无码偷拍在线观看 | 成人毛片1024你懂的 | 欧美在线观看网址 | 欧美日韩一本 | 国产免费专区 | 欧洲vodafone精品性 | 国产成人精品视频一区二区不卡 | 爽好紧别夹宝贝叫大声点护士 |