• Hibernate的二级缓存(SessionFaction的外置缓存)-----Helloword


    1. 使用 Hibernate 二级缓存的步骤:

    1). 加入二级缓存插件的 jar 包及配置文件:

    I. 复制 hibernate-release-4.2.4.Finalliboptionalehcache*.jar 到当前 Hibrenate 应用的类路径下.
    II. 复制 hibernate-release-4.2.4.Finalprojectetcehcache.xml 到当前 WEB 应用的类路径下

    2). 配置 hibernate.cfg.xml

    I. 配置启用 hibernate 的二级缓存
    <property name="cache.use_second_level_cache">true</property>

    II. 配置hibernate二级缓存使用的产品
    <property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property>

    III. 配置对哪些类使用 hibernate 的二级缓存
    <class-cache usage="read-write" class="com.atguigu.hibernate.entities.Employee"/>

    实际上也可以在 .hbm.xml 文件中配置对哪些类使用二级缓存, 及二级缓存的策略是什么. (优先推荐使用这种)
    在<class>的标签里加一个这样的标签<cache usage="read-write"/>
    测试代码:

    @Test
        public void TestSecondLevelCache(){
            Employee employee=(Employee) session.get(Employee.class, 10);
            System.out.println(employee.getName());
            transaction.commit();
            session.close();
            
            session=sessionFactory.openSession();
            transaction=session.beginTransaction();
            
            Employee employee2=(Employee) session.get(Employee.class, 10);
            System.out.println(employee2.getName());
            
        }

    测试效果:

    INFO: HHH000232: Schema update complete
    Hibernate: 
        select
            employee0_.ID as ID1_1_0_,
            employee0_.NAME as NAME2_1_0_,
            employee0_.SALARY as SALARY3_1_0_,
            employee0_.EMAIL as EMAIL4_1_0_,
            employee0_.DEPT_ID as DEPT_ID5_1_0_ 
        from
            GG_EMPLOYEE employee0_ 
        where
            employee0_.ID=?
    JJ
    JJ
  • 相关阅读:
    阿诺尔德给5至15岁孩子出的数学题
    上手机器学习,从搞懂这十大经典算法开始
    海报模板
    测度论--长度是怎样炼成的[zz]
    柯西不是你
    搭建Web部署环境
    搭建jdk环境
    Win10远程桌面 出现 身份验证错误,要求的函数不受支持,这可能是由于CredSSP加密Oracle修正 解决方法
    Web开发技术选型之Java与PHP
    从java到web前端再到php,一路走来的小总结
  • 原文地址:https://www.cnblogs.com/jeremy-blog/p/4021703.html
Copyright © 2020-2023  润新知