zoukankan      html  css  js  c++  java
  • Hibernate二级缓存配置

    一、定义:

    二级缓存是进程或集群范围内的缓存,可以被所有的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("=========================");
        }
    复制代码

    输出结果如下:

    注:一级缓存保存的是内存对象的引用,二级缓存中数据散装,需重新封装新的对象,所以两个内存地址不同

  • 相关阅读:
    ActiveMQ-在Centos7下安装和安全配置
    Servlet基础知识点
    Filter的执行顺序
    Dubbo-使用Maven构建Dubbo服务的可执行jar包
    Dubbo-Centos7管控台安装
    Spring 小知识点
    Zookeeper+ActiveMQ集群搭建
    Zookeeper在Centos7上搭建单节点应用
    SpringMVC+AJAX+JSON
    RocketMQ-Filer
  • 原文地址:https://www.cnblogs.com/hr1997/p/5848042.html
Copyright © 2011-2022 走看看