hibernate4之配置檔案

2021-09-02 12:19:06 字數 1894 閱讀 3245

hibernate配置檔案

hibernate 配置檔案主要用於配置資料庫連線和 hibernate 執行時所需的各種屬性

每個 hibernate 配置檔案對應乙個 configuration 物件

hibernate配置檔案可以有兩種格式:

hibernate.properties

hibernate.cfg.xml 

hibernate.cfg.xml的常用屬性

1. jdbc 連線屬性(必須)

connection.url:資料庫url 

connection.username:資料庫使用者名稱

connection.password:資料庫使用者密碼 

connection.driver_class:資料庫jdbc驅動 

dialect:配置資料庫的方言,根據底層的資料庫不同產生不同的 sql 語句,hibernate 會針對資料庫的特性在訪問時進行優化

2. c3p0 資料庫連線池屬性(可選)

hibernate.c3p0.max_size: 資料庫連線池的最大連線數

hibernate.c3p0.min_size: 資料庫連線池的最小連線數

hibernate.c3p0.timeout:   資料庫連線池中連線物件在多長時間沒有使用過後,就應該被銷毀

hibernate.c3p0.max_statements:  快取 statement 物件的數量

hibernate.c3p0.idle_test_period:  表示連線池檢測線程多長時間檢測一次池內的所有鏈結物件是否超時. 連線池本身不會把自己從連線池中移除,而是專門有乙個執行緒按照一定的時間間隔來做這件事,這個執行緒通過比較連線物件最後一次被使用時間和當前時間的時間差來和 timeout 做對比,進而決定是否銷毀這個連線物件。 

hibernate.c3p0.acquire_increment: 當資料庫連線池中的連線耗盡時, 同一時刻獲取多少個資料庫連線

3. 其他

show_sql:是否將執行期生成的sql輸出到日誌以供除錯。取值 true | false 

format_sql:是否將 sql 轉化為格式良好的 sql . 取值 true | false

hbm2ddl.auto:在啟動和停止時自動地建立,更新或刪除資料庫模式。取值 create | update | create-drop | validate

hibernate.jdbc.fetch_size:實質是呼叫 statement.setfetchsize() 方法設定 jdbc 的 statement 讀取資料的時候每次從資料庫中取出的記錄條數。例如一次查詢1萬條記錄,對於oracle的jdbc驅動來說,是不會 1 次性把1萬條取出來的,而只會取出 fetchsize 條數,當結果集遍歷完了這些記錄以後,再去資料庫取 fetchsize 條資料。因此大大節省了無謂的記憶體消耗。fetch size設的越大,讀資料庫的次數越少,速度越快;fetch size越小,讀資料庫的次數越多,速度越慢。oracle資料庫的jdbc驅動預設的fetch size = 10,是乙個保守的設定,根據測試,當fetch size=50時,效能會提公升1倍之多,當 fetchsize=100,效能還能繼續提公升20%,fetch size繼續增大,效能提公升的就不顯著了。並不是所有的資料庫都支援fetch size特性,例如,mysql就不支援。

hibernate.jdbc.batch_size:設定對資料庫進行批量刪除,批量更新和批量插入的時候的批次大小,類似於設定緩衝區大小的意思。batchsize 越大,批量操作時向資料庫傳送sql的次數越少,速度就越快。測試結果是當batch size=0的時候,使用hibernate對oracle資料庫刪除1萬條記錄需要25秒,batch size = 50的時候,刪除僅僅需要5秒!oracle資料庫 batchsize=30 的時候比較合適。

osgi 環境下 hibernate 4 配置

準備將公司的老應用遷移到osgi karaf平台上。很 的一點就是hibernate。這玩意,真是超級麻煩的乙個工程。classload是最頭痛的乙個問題。在hibernate4上利用註冊服務的方式 實現了 classloader的 順便提一句想用hibernate3做reloadclass的同學們...

hibernate之配置檔案詳解

hibernate配置檔案分為 1.orm元資料.2.hibernate主配置.orm元資料 cstcustomer.hbm.xml 也分為 1 根元素 2.class元素 3.id元素 4.property元素 2 hibernate主配置 是以hibernate.cfg.xml描述 必選屬性 5...

HIBERNATE4原始碼編譯

git gradlew.bat assemble 可跳過測試,否則執行gradlew.bat build的過程中,遇到test出錯會報錯退出 本以為會順利結束,沒想到又報錯了。是符號無法識別轉換的錯誤。在網上搜尋了一番,這個跟系統的區域設定有關。需要改為 英語 英國 我試了英語 美國 居然還是報錯。...