首頁 > Java > java教程 > 主體

淺析java程式中hibernate的應用總結

高洛峰
發布: 2017-01-23 11:37:10
原創
1252 人瀏覽過

我們知道如果用java連接資料庫,大量的SQL程式碼,我們就想透過一種工具來操作資料庫,
我們首先想到的就是JDBC,但是想更好的針對類別的屬性進行操作,我們會選擇Hibernate。

那麼Hibernate 原理是什麼呢?
hibernate可以理解為是一個中間件它負責把java程式的sql語句接收過來發送到資料庫,
而資料庫傳回的信息hibernate接收之後直接產生一個物件傳給java。

一  首先我們先了解hibernate的工作7個流程:
1.讀取並解析設定檔   
2.創建SessionFactory
3.開啟Session
4.開始一個事物
5.持久化作業提交
6.事務
7.關閉Session

二接著我們要理解實體物件的生命週期是Hibernate 的三種狀態
瞬時狀態(Transient)
剛用new語句創建,還沒有被持久化,且不處於Session的快取中
持久狀態(Persistent)
已經持久化,且加入Session的快取中
遊離狀態(Detached)
已經持久化,但不再處於Session的快取中

淺析java程式中hibernate的應用總結

Hibernate中需要理解的一部分。
持久化:資料模型(記憶體)《--》儲存模型(持久化設備),在Java中說持久化,通常指的是使用SQL將資料儲存在關係型資料庫中。
ORM是持久化的一種解決方案,主要是把物件模型和關係型資料庫關係模型映射起來,並且使用元資料對這些映射進行描述。

Hibernate中必須要搭建專案框架編寫hibernate設定檔、實體映射檔 
建立專案並匯入jar包
建立Hibernate設定檔   
用於設定資料庫連線 
執行階段所需的各種屬性🎠 

用於設定資料庫連線 

執行階段所需的各種屬性

「hibernate.cfg.xml」
測試連線
使用Hibernate完成資料增刪改操作 
1.建立實體類別
2.建立與設定映射檔
3.主鍵映射
4.主鍵產生策略
5.在主設定檔

3.主鍵映射

4.主鍵產生策略
5.在主設定檔中新增實體映射檔路徑
6.資料庫操作
7.單表增刪改查

四Hibernate 支援兩種主要的查詢方式
(1)HQL(Hibernate Query Languge,Hibernate 查詢語言)查詢

是一種面向物件的查詢語言,其中沒有表格和欄位的概念,只有類別、物件和屬性的概念

HQL 是應用較為廣泛的方式。

(2) Criteria 查詢
又稱為“物件查詢”,它用物件導向的方式將建構查詢的過程做了封裝。

五在運用Hibernate時,我們應該注意一些事情

(1)Hibernate是如何延遲載入? 
    1.Hibernate延遲載入實作:a)實體物件b)集合(Collection) 
  ate載入功能 
當Hibernate在查詢資料的時候,資料並沒有存在與記憶體中,當程式真正對資料的操作時,物件才存在與記憶體中,就實現了延遲加載,他節省了伺服器的記憶體開銷,從而提高了伺服器的效能。

(2)說下Hibernate的快取機制 
    1. 內部快取存在Hibernate中又叫一級緩存,屬於應用事物等級快取 
   分散式快取 

條件:資料不會被第三方修改、資料大小在可接受範圍、資料更新頻率低、相同資料被系統頻繁使用、

        非關鍵資料 

       c) 第三方快取的實現更多淺化資料🎜 hibernate的應用總結相關文章請關注PHP中文網! 🎜
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!