开发者社区> 问答> 正文

关于Spring配置Ehcache缓存

因为会在内部使用this 调用@Cacheable 标记的方法 而基于 proxy 的 AOP 模式 这种情况不会使用缓存,而直接查询;然后配置了如下的

!--  缓存  属性--> 
    <bean id="cacheManagerFactory" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">    
        <property name="configLocation"  value="classpath:ehcache.xml"/>   
    </bean> 
     
    <!-- 默认是cacheManager --> 
    <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"
        p:cacheManager-ref="cacheManagerFactory">    
    </bean> 
 
    <!-- 支持缓存注解 -->
    <cache:annotation-driven cache-manager="cacheManager" mode="aspectj" proxy-target-class="true"/>

内部调用的时候还是不能使用缓存;求解答啊

展开
收起
小旋风柴进 2016-03-03 15:44:06 2177 0
1 条回答
写回答
取消 提交回答
  • 给你两点SpringCache的tips:

    1. 缓存注解只对public方法有效,其他类型均无效
    2. 在Spring代理模式下对象内部自己调用@Cacheable方法不会使用Cache
    2019-07-17 18:51:32
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多