spring3.1使用cache

简介:
xml代码
< beans  xmlns ="http://www.springframework.org/schema/beans"  xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"   
    xmlns:cache
="http://www.springframework.org/schema/cache"   
    xmlns:p
="http://www.springframework.org/schema/p"   
    xsi:schemaLocation
="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
    http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd"
>  
     < cache:annotation-driven  />  
     <!--  generic cache manager  -->  
     < bean  id ="cacheManager"  class ="org.springframework.cache.support.SimpleCacheManager" >  
         < property  name ="caches" >  
             < set >  
                 < bean  class ="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean"  p:name ="default" />  
                 < bean  class ="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean"  p:name ="sys_resource" />  
             </ set >  
         </ property >  
     </ bean >  
</ beans >  
java代码
package org.jeasyweb.framework.sys_user.service;

import java.util.Iterator;
import java.util.Set;

import org.jeasyweb.framework.sys_user.entity.SysResource;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;

@ContextConfiguration({ "classpath:applicationContext-dataSource.xml",
        "classpath:applicationContext-role.xml",
        "classpath:applicationContext-cache.xml" })
public  class UserServiceTest  extends
        AbstractTransactionalJUnit4SpringContextTests {
    @Autowired
    UserService userService;

    @Test
     public  void testHello() {
        Set<SysResource> resources = userService
                .getResourceByUserId( new Long(1));
        Iterator<SysResource> it = resources.iterator();
    }

    @Test
     public  void testCache() {
        Set<SysResource> resources2 = userService.getResourceByUserId( new Long(
                1));
    }
}
service代码
    @Override
    @Cacheable(value = "sys_resource", key = "'getResourceByUserId_' + #id")
     public Set<SysResource> getResourceByUserId(Long id) {
// .
本文转自博客园沉睡森林@漂在北京的博客,原文链接:spring3.1使用cache,如需转载请自行联系原博主。
目录
相关文章
|
缓存 NoSQL Java
Spring Cache 缓存原理与 Redis 实践
Spring Cache 缓存原理与 Redis 实践
661 0
|
存储 缓存 Java
【Spring原理高级进阶】有Redis为啥不用?深入剖析 Spring Cache:缓存的工作原理、缓存注解的使用方法与最佳实践
【Spring原理高级进阶】有Redis为啥不用?深入剖析 Spring Cache:缓存的工作原理、缓存注解的使用方法与最佳实践
|
XML 存储 缓存
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache管理器的实战开发指南(修正篇)
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache管理器的实战开发指南(修正篇)
240 0
|
缓存 NoSQL Java
Spring Boot 3 整合 Spring Cache 与 Redis 缓存实战
Spring Boot 3 整合 Spring Cache 与 Redis 缓存实战
|
7月前
|
存储 缓存 NoSQL
Spring Cache缓存框架
Spring Cache是Spring体系下的标准化缓存框架,支持多种缓存(如Redis、EhCache、Caffeine),可独立或组合使用。其优势包括平滑迁移、注解与编程两种使用方式,以及高度解耦和灵活管理。通过动态代理实现缓存操作,适用于不同业务场景。
617 0
|
缓存 NoSQL Java
在 Spring Boot 应用中使用 Spring Cache 和 Redis 实现数据查询的缓存功能
在 Spring Boot 应用中使用 Spring Cache 和 Redis 实现数据查询的缓存功能
953 0
|
存储 XML 缓存
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南(一)
【深入浅出Spring原理及实战】「缓存Cache开发系列」带你深入分析Spring所提供的缓存Cache功能的开发实战指南
916 0
|
缓存 NoSQL Java
SpringBoot的三种缓存技术(Spring Cache、Layering Cache 框架、Alibaba JetCache 框架)
Spring Cache 是 Spring 提供的简易缓存方案,支持本地与 Redis 缓存。通过添加 `spring-boot-starter-data-redis` 和 `spring-boot-starter-cache` 依赖,并使用 `@EnableCaching` 开启缓存功能。JetCache 由阿里开源,功能更丰富,支持多级缓存和异步 API,通过引入 `jetcache-starter-redis` 依赖并配置 YAML 文件启用。Layering Cache 则提供分层缓存机制,需引入 `layering-cache-starter` 依赖并使用特定注解实现缓存逻辑。
3287 1
SpringBoot的三种缓存技术(Spring Cache、Layering Cache 框架、Alibaba JetCache 框架)
|
缓存 NoSQL Java
Spring Cache之本地缓存注解@Cacheable,@CachePut,@CacheEvict使用
SpringCache不支持灵活的缓存时间和集群,适合数据量小的单机服务或对一致性要求不高的场景。`@EnableCaching`启用缓存。`@Cacheable`用于缓存方法返回值,`value`指定缓存名称,`key`定义缓存键,可按SpEL编写,`unless`决定是否不缓存空值。当在类上使用时,类内所有方法都支持缓存。`@CachePut`每次执行方法后都会更新缓存,而`@CacheEvict`用于清除缓存,支持按键清除或全部清除。Spring Cache结合Redis可支持集群环境。
1647 6
|
缓存 Java Spring
单体项目中资源管理模块集成Spring Cache
该内容是关于将Spring Cache集成到资源管理模块以实现缓存同步的说明。主要策略包括:查询时添加到缓存,增删改时删除相关缓存。示例代码展示了@Service类中使用@Transactional和@Cacheable注解进行缓存操作,以及在RedisTemplate中处理缓存的示例。
154 5