Hibernate效能優化策略

2021-08-25 21:54:00 字數 764 閱讀 4380

1)快取機制

a)基本快取——session快取(一級快取)

session中儲存了乙個map(id-->po)

po(持久化物件)

b)二級快取(全域性快取)——sessionfactory

1、過度使用的問題:記憶體會被過度占用,

會導致系統效能急劇下降。

2、使用條件:

i)快取的資料比較穩定(變動不頻繁)(如 部門)

ii)快取的資料使用比較頻繁(快取的命中率)

c)啟用二級快取

在「hibernate.cfg.xml」的中加入屬性——

org.hibernate.cache.oscacheprovider

d)使用二級快取

快取方式:read-only;read-write

兩個級別——類級別和集合級別

使用語法:在或(集合)裡面加入——

1)read-only (唯讀)

一般包括系統引數

2)read-write (可寫)

...2)延緩載入

a、在絕大多數情況下是很有用的

如 order(items)

b、取消延緩載入的方法

i)ii)關聯對映中,關聯的地方用「fetch="join"」

3)批量抓取

"batch-size=10"

用在或(集合)

a、class

用emp來抓取dept

b、set

用order來抓取items

...

Hibernate效能優化

hibernate效能優化提高 1.快取 hibernate缺省會用到快取,用得好就能大大提高效能,用得不好就會影響到效率 快取其實就是資料庫資料在記憶體中的乙個臨時容器,將查詢過得資料暫時放在這個容器中,下次如果還是查詢一樣的,就直接在該容器中取得,就不用再去資料庫裡查詢了,這樣間接性的提高了效率...

Hibernate常見優化策略

制定合理的快取策略 二級快取 查詢快取 採用合理的session管理機制。盡量使用延遲載入特性。設定合理的批處理引數。如果可以,選用uuid作為主鍵生成器。如果可以,選用基於版本號的樂觀鎖替代悲觀鎖。在開發過程中,開啟hibernate.show sql選項檢視生成的sql,從而了解底層的狀況 開發...

hibernate 的效能優化

一級快取 session級別的快取 listusers list session.createquery sql iteratorusers iterator session.createquery sql list 直接資料庫載入user iterator 讀出來的是id 先在session中找 ...