zoukankan      html  css  js  c++  java
  • Hibernate 集成 Ehcache 开启二级缓存

    一、将 Ehcache.xml 放到 classpath 下

    <?xml version="1.0" encoding="UTF-8"?>
    <ehcache>
        <!--磁盘存储:用来指定缓存在磁盘上的存储目录。
        可以使用JavaVM环境变量(user.home, user.dir, java.io.tmpdir)-->
        <diskStore path="d:/ehcache/"></diskStore>
        
        <!-- 默认缓存配置 -->
        <defaultCache
            maxElementsInMemory="10000"
            eternal="true"
            timeToIdleSeconds="120"
            timeToLiveSeconds="12000"
            overflowToDisk="true"
        />
        
        <!-- cache:为指定名称的缓存 -->
        <cache 
            name="CorpInfo" 
            maxElementsInMemory="10000" 
            eternal="false"
            timeToIdleSeconds="10000" 
            timeToLiveSeconds="10000" 
            overflowToDisk="true" 
        />
    
    </ehcache>

    二、整合配置

      在 hibernate 数据库连接配置文件中新增如下配置

    <!-- 开启查询缓存 -->
    <prop key="hibernate.cache.use_query_cache">true</prop>
    <!-- 开启二级缓存 -->
    <prop key="hibernate.cache.use_second_level_cache">true</prop>
    <!--设置二级缓存的Provider类 -->
    <prop key="hiCbernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>
    <!--设置缓存的配置文件路径 -->
    <prop key="hibernate.cache.provider_configuration_file_resource_path">classpath:ehcache.xml</prop>
    <!-- Hibernate将收集有助于性能调节的统计数据 -->
    <prop key="hibernate.generate_statistics">true</prop>

    三、在需要缓存对象的映射文件中添加参数

    <cache usage="read-write" region="cn.xxx.xxx.model.CorpInfo"/>

    配置完成可根据项目实际情况进行测试

  • 相关阅读:
    编程基础之Java中继承和多态的理解
    2020年程序员是否过剩?
    如何自学编程,零基础适合学习Java或者Web前端吗,非科班的能学java吗?
    转行IT做后端开发,学python还是java?
    java和大数据哪个更有前途啊?零基础适合学哪个课程?
    随笔(二十)
    随笔(十九)
    随笔(十八)
    OSPF练习
    OSPF综合实验(二)
  • 原文地址:https://www.cnblogs.com/MIC2016/p/6401034.html
Copyright © 2011-2022 走看看