成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

精通Hibernate管理緩存

開發
管理Hibernate緩存(Managing the caches)在Hibernate應用中很重要,無論何時,當你給save()等方法傳遞一個對象時,或使用load()等方法獲得一個對象時, 該對象都將被加入到Session的內部緩存中。

無論何時,我們在管理Hibernate緩存(Managing the caches)時,當你給save()、update()或saveOrUpdate()方法傳遞一個對象時,或使用load()、 get()、list()、iterate() 或scroll()方法獲得一個對象時, 該對象都將被加入到Session的內部緩存中。

當隨后flush()方法被調用時,對象的狀態會和數據庫取得同步。 如果你不希望此同步操作發生,或者你正處理大量對象、需要對有效管理內存時,你可以調用evict() 方法,從一級緩存中去掉這些對象及其集合。

  1. ScrollableResult cats = sess.createQuery("from Cat as cat").scroll(); //a huge result set  
  2. while ( cats.next() ) {  
  3.     Cat cat = (Cat) cats.get(0);  
  4.     doSomethingWithACat(cat);  
  5.     sess.evict(cat);  

Session還提供了一個contains()方法,用來判斷某個實例是否處于當前session的緩存中。

如若要把所有的對象從session緩存中徹底清除,則需要調用Session.clear()。

對于二級緩存來說,在SessionFactory中定義了許多方法, 清除緩存中實例、整個類、集合實例或者整個集合。

  1. sessionFactory.evict(Cat.class, catId); //evict a particular Cat  
  2. sessionFactory.evict(Cat.class);  //evict all Cats  
  3. sessionFactory.evictCollection("Cat.kittens", catId); //evict a particular collection of kittens  
  4. sessionFactory.evictCollection("Cat.kittens"); //evict all kitten collections 

CacheMode參數用于控制具體的Session如何與二級緩存進行交互。

CacheMode.NORMAL - 從二級緩存中讀、寫數據。

CacheMode.GET - 從二級緩存中讀取數據,僅在數據更新時對二級緩存寫數據。

CacheMode.PUT - 僅向二級緩存寫數據,但不從二級緩存中讀數據。

CacheMode.REFRESH - 僅向二級緩存寫數據,但不從二級緩存中讀數據。通過 hibernate.cache.use_minimal_puts的設置,強制二級緩存從數據庫中讀取數據,刷新Hibernate緩存內容。

如若需要查看二級緩存或查詢Hibernate緩存區域的內容,你可以使用統計(Statistics) API。

  1. Map cacheEntries = sessionFactory.getStatistics()  
  2.         .getSecondLevelCacheStatistics(regionName)  
  3.         .getEntries(); 

此時,你必須手工打開統計選項。可選的,你可以讓Hibernate更人工可讀的方式維護Hibernate緩存內容。

  1. hibernate.generate_statistics true  
  2. hibernate.cache.use_structured_entries true 

【編輯推薦】

  1. 簡述Hibernate中加載并存儲對象
  2. Hibernate傳播性持久化攻略
  3. 深入了解Hibernate自動狀態檢測
  4. 簡單學會Hibernate對象持久化
  5. 分析Hibernate自增主鍵
責任編輯:仲衡 來源: javanb
相關推薦

2012-02-08 14:24:35

HibernateJava

2009-07-02 09:23:27

Hibernate緩存

2009-06-29 08:48:41

Hibernate緩存

2012-02-08 11:15:38

HibernateJava

2012-02-08 12:17:38

HibernateJava

2012-02-03 11:31:33

HibernateJava

2009-09-25 13:51:13

Hibernate S

2009-06-17 15:43:03

Hibernate緩存

2009-09-23 17:03:08

Hibernate S

2012-02-08 14:01:18

HibernateJava

2009-09-22 10:50:04

Hibernate c

2009-09-22 11:24:07

Hibernate查詢

2009-06-30 14:08:00

Hibernate緩存

2009-06-17 15:13:30

2009-09-27 14:53:38

Hibernate S

2009-06-18 14:51:12

Hibernate緩存Hibernate

2012-02-08 13:34:08

HibernateJava

2009-09-23 10:19:08

Hibernate分頁

2009-09-28 09:47:55

Hibernate數據

2012-02-08 11:01:53

HibernateJava
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久久一级毛片 | 九九看片| 亚洲精品乱码久久久久久9色 | 中文字幕第一页在线 | 亚洲一区电影 | 欧美精品一区二区在线观看 | 浴室洗澡偷拍一区二区 | 精品一区二区三区四区 | 天天色天天色 | 成人影院在线视频 | 精品国产精品三级精品av网址 | 国产精品视频二区三区 | jdav视频在线观看免费 | 亚洲精品乱码久久久久久按摩观 | 韩日一区二区 | 亚洲精品9999 | 黄色国产大片 | 久草久草久草 | 国产男女视频 | 国产精品日韩一区二区 | 视频国产一区 | 精品视频一区二区三区在线观看 | 精品免费视频一区二区 | 欧美a级成人淫片免费看 | 羞羞视频在线观看网站 | 伊人精品在线 | 日韩精品成人一区二区三区视频 | 国产在线精品一区二区 | 毛片一级片 | 成人免费视频网站在线观看 | 热久久久久 | 精品三区| 成人九区 | 成人在线播放网站 | 性高湖久久久久久久久 | 亚洲免费一区二区 | 日本精a在线观看 | 福利网址| 国产精品日韩一区 | 色婷婷精品国产一区二区三区 | 国产精品精品 |