文章出處
文章列表
一、定義:
二級緩存是進程或集群范圍內的緩存,可以被所有的Session共享,是可配置的插件
二、二級緩存原理圖
解析:每次從二級緩存中取出的對象,都是一個新的對象。
三、配置步驟如下:
同理:以員工類和部門類為例
① 引入jar包
② 關鍵點:
大配置Hibernate.cfg.xml開啟二級緩存
③ 在src下添加ehcache.xml文件,從etc獲取文件即可。
④測試二級緩存(數據散裝的特點)
public class Test1 { Session session; Transaction tx; Session session2; Transaction tx2; @After public void afterTest(){ tx.commit(); HibernateUtil.CloseSession(); } @Before public void initData(){ session=HibernateUtil.getSession(); tx=session.beginTransaction(); } /* * 二級緩存 */ @Test public void twoTest(){ session=HibernateUtil.getSession(); tx=session.beginTransaction(); Emp emp=(Emp)session.get(Emp.class, 2); System.out.println(emp); tx.commit(); System.out.println("========================"); Emp emp2=(Emp)session.get(Emp.class, 2); System.out.println(emp2); System.out.println("========================"); session2=HibernateUtil.getSession(); tx2=session2.beginTransaction(); Emp emp3=(Emp)session2.get(Emp.class, 2); System.out.println(emp3); tx2.commit(); System.out.println("========================="); }
輸出結果如下:
注:一級緩存保存的是內存對象的引用,二級緩存中數據散裝,需重新封裝新的對象,所以兩個內存地址不同
文章列表
全站熱搜