Hibernate二級緩存配置

1、定義:緩存

二級緩存是進程或集羣範圍內的緩存,能夠被全部的Session共享,是可配置的插件session

2、二級緩存原理圖測試

 

解析:每次從二級緩存中取出的對象,都是一個新的對象。spa

 

3、配置步驟以下:插件

同理:以員工類和部門類爲例code

① 引入jar包xml

 

② 關鍵點:對象

大配置Hibernate.cfg.xml開啓二級緩存blog

③ 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("=========================");
    }

輸出結果以下:

 

注:一級緩存保存的是內存對象的引用,二級緩存中數據散裝,需從新封裝新的對象,因此兩個內存地址不一樣

相關文章
相關標籤/搜索