[破解]為什麼hibernate插入快,查詢慢

yellowcat發表於2009-06-05
直接用createQuery().list(),那是最不最佳化的一種查詢方式
因為hibernate其實在背後做了很多手腳

1.查詢之前會flush(),髒檢查!!需要時間
2.如果啟動二級快取,會先在二級快取找!!需要時間
3.返回的持久化物件會在一級快取建立髒檢查機制!!需要空間和很多時間
4.如果很很多行記錄的話,沒有啟用批次查詢
5.如果啟動二級快取,將得到的持久化物件在二級快取建立一個副本!!需要很多時間和空間

哈哈,:),不慢才怪

用hibernate的效能:插入很快,可查詢為什麼非常慢?????

相關文章