原文從延遲載入、抓取策略、快取管理三方面介紹了關於hibernate優化的方法
優化hibernate所鼓勵的7大措施:
1.盡量使用many-to-one,避免使用單項one-to-many
(hibernate鼓勵使用雙向一對多關聯,不使用單向一對多關聯。單向一對多關聯對映是在one端維護關係的,必須先儲存many端後才可以儲存one端,所以在儲存many端時該端不知道one端是否存在相應的資料,所以只能將維護的關係字段設定為null,如果為非空則無法儲存。因為是one端維護關係,所以在儲存one端時,會發出多餘的update語句維護many端的外來鍵關係。)
2.靈活使用單向one-to-many
3.不用一對一,使用多對一代替一對一
4.配置物件快取,不使用集合快取
5.一對多使用bag 多對一使用set
6.繼承使用顯示多型 hql:from object polymorphism="exlicit" 避免查處所有物件
7.消除大表,使用二級快取
Hibernate效能優化
hibernate效能優化提高 1.快取 hibernate缺省會用到快取,用得好就能大大提高效能,用得不好就會影響到效率 快取其實就是資料庫資料在記憶體中的乙個臨時容器,將查詢過得資料暫時放在這個容器中,下次如果還是查詢一樣的,就直接在該容器中取得,就不用再去資料庫裡查詢了,這樣間接性的提高了效率...
hibernate 優化要點
robbin總結的hibernate效能優化要點 1.盡量使用many to one,避免使用單項one to many 2.靈活使用單向one to many 3.不用一對一,使用多對一代替一對一 4.配置物件快取,不使用集合快取 5.一對多使用bag 多對一使用set 6.繼承使用顯示多型 hq...
使用hibernate優化
a 在查詢字串中,應該總是使用jdbc的佔位符?或使用使用命名引數 不要自查詢中使用字串值來代替非常量值。b flush會影響效能,頻繁重新整理影響效能,儘量減少不必要的重新整理。c cascade策略,在幾對幾的關係,正確設定cascade策略,想清楚在操作物件a的同時是否需要級聯操作物件b,比如...