文档章节

spring-data-jpa二级缓存(EhCache)配置

n
 nibilly
发布于 2017/02/16 17:58
字数 198
阅读 93
收藏 0

一、maven配置

<hibernate.version>5.1.4.Final</hibernate.version>

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-ehcache -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-ehcache</artifactId>
            <version>${hibernate.version}</version>
        </dependency> 

二、配置xml

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="showSql" value="${db.showSql}" />
                <property name="generateDdl" value="${db.generateDdl}" />
                <property name="database" value="${db.database}" />
            </bean>
        </property>
        <property name="packagesToScan">
            <list>
                <value>cn.com.easy.*.model</value>
                <value>cn.com.platform.model</value>
            </list>
        </property>
        <property name="jpaProperties">
            <props>
                <!-- 二级缓存配置 -->
                <prop key="hibernate.cache.use_query_cache">true</prop>
                <prop key="hibernate.cache.use_second_level_cache">true</prop>
                <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
                <prop key="hibernate.use_sql_comments">true</prop>
                <prop key="hibernate.format_sql">false</prop>
                <prop key="hibernate.generate_statistics">true</prop>
                <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
                <prop key="javax.persistence.sharedCache.mode">ENABLE_SELECTIVE</prop>
            </props>
        </property>

    </bean>

三、配置实体

@Entity
@Table(name = "pf_md_user_roles_mapping")
@DynamicInsert
@DynamicUpdate
@Cache(usage=CacheConcurrencyStrategy.TRANSACTIONAL)
public class UserRolesMappingModel extends BaseEntity {

四、配置 JpaRepository
public interface UserRolesMappingDao extends JpaRepository<UserRolesMappingModel, Long>, JpaSpecificationExecutor<UserRolesMappingModel> {
    @Query("select u from UserModel u where u.id in (select mapping.userId from UserRolesMappingModel mapping where mapping.roleId = ?1)")
    @QueryHints({@QueryHint(name = "org.hibernate.cacheable", value ="true") })
    public Page<UserModel> findUserModelByRoleId(Long roleId, Pageable pageable);

 

 

 

© 著作权归作者所有

共有 人打赏支持
n
粉丝 14
博文 179
码字总数 41779
作品 0
厦门
Spring基于注解的缓存配置--web应用实例

之前为大家介绍了如何使用spring注解来进行缓存配置 (EHCache 和 OSCache)的简单的例子,详见 Spring基于注解的缓存配置--EHCache AND OSCache 现在介绍一下如何在基于注解springMVC的web...

小样
2012/02/28
0
0
spring-data-jpa+hibernate 各种缓存的配置演示

本文所有测试用代码在https://github.com/wwlleo0730/restjplat 的分支addDB上 目前使用在使用spring-data-jpa和hibernate4的时候,对于缓存关系不是很清楚,以及二级缓存和查询缓存的各种配...

wwlleo123
2014/03/18
0
0
将 Shiro 作为应用的权限基础 五:SpringMVC+Apache Shiro+JPA(hib

点击链接加入群【JavaEE(SSH+IntelliJIDE+Maven)】:http://jq.qq.com/?wv=1027&k=L2rbHv 将 Shiro 作为应用的权限基础 五:SpringMVC+Apache Shiro+JPA(hibernate)整合配置 配置web.xml,a...

moz1q1
2014/08/22
0
0
Java面似宝典--Java Web(JSP、Servlet、各常用框架SSH、MyBatis等)

1、什么MVC模式?说说你对MVC的理解。 2、工作中经常用到的框架有哪些?它们各自的优缺点是什么? 3、说说Struts、Spring中的设计模式。 4、拦截器和过滤器两者的区别是什么? 5、简述一下,...

瓜子葫芦侠
2014/03/26
0
0
大型Java多用户商城系统设计开发的心得和困难

大型Java多用户商城系统设计开发的心得和困难 http://www.iteye.com/topic/1119514 表示层struts, spring mvc, jsf,tapestry... 控制层:spring 数据持久层:hibernate/ibatis/jdbc,归根到底...

ddatsh
2012/02/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

mixin混入

①新建mixin.js文件 const mixin = { methods: { /** * 分页公共方法 */ handleSizeChange(val) { this.pageData.size = val; this.query(); }, hand......

不负好时光
昨天
0
0
ERC1155实践|区块链游戏的平行宇宙和为此而生的Enjin钱包

1 摘要 恩金(Enjin)花了大半年的时间一直在完善ERC-1155这个通证协议,毫不夸张地说,该标准是现有以太坊上最适用于游戏资产的通证标准,将主流游戏中道具涉及到的一切操作经过高度抽象之后...

HiBlock
昨天
1
0
Oracle发布开源的轻量级 Java 微服务框架 Helidon

近日,Oracle推出了一个新的开源框架Helidon,该项目是一个用于创建基于微服务的应用程序的Java库集合。和Payara Micro、Thorntail(之前的WildFly Swarm)、OpenLiberty、TomEE等项目一样,...

关注公众号_搜云库_每天更新
昨天
1
0
启动线程以及安全终止线程

启动 使用start()方法可以启动线程。 start()方法的含义是告知线程规划器线程已初始化完毕,可以分给这个线程时间片了(执行run()方法)。 安全终止线程 示例代码 import java.util.concurr...

karma123
昨天
1
0
Python+OpenCV 图像风格迁移(模仿名画)

现在很多人都喜欢拍照(自拍)。有限的滤镜和装饰玩多了也会腻,所以就有 APP 提供了模仿名画风格的功能,比如 prisma、versa 等,可以把你的照片变成 梵高、毕加索、蒙克 等大师的风格。 这...

crossin
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部