4.@Cacheable注解时会报错说没有key报错java.lang.ClassCastException: org.springframework.cache.interceptor.SimpleKey cannot be cast to java.lang.String,解决办法:新建文件RedisConfig.java 文件,内容如下: @Configuration @EnableCachingpublicclassRedisConfigextendsCachingConfigurerSupport { @Override @BeanpublicK...
import org.springframework.data.redis.cache.RedisCacheConfiguration; import org.springframework.data.redis.cache.RedisCacheManager; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.serializer.*; import java.time.Duration; /** * @description: re...
<bean id="connectionFactoryTax" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" p:host-name="${redis_tax.host}" p:port="${redis_tax.port}" p:password="${redis_tax.pass}" p:pool-config-ref="poolConfigTax" p:database="0"/> <!--redis操作模版,使用该对象...
2、CacheRedisConfig类 packageio.mykit.cache.redis.spring.annotation.config; importcom.alibaba.fastjson.parser.ParserConfig; importio.mykit.cache.redis.spring.aspect.CachingAnnotationsAspect; importio.mykit.cache.redis.spring.cache.CacheKeyGenerator; importio.mykit.cache.redis.spring.cache.CacheTime; import...
/** * 首先从缓存中查,查到之后,直接返回缓存数据;否则执行方法,并将结果缓存 * * redisKey: cacheNames + key 组合而成 --> 支持SpEL * redisValue: 返回结果 * * @param name * @return */ @Cacheable(cacheNames = "say", key = "'p_'+ #name") public String sayHello(String name) { ...
全程使用默认配置,redis本机,端口6379,无密码 II. 缓存注解介绍 1.@Cacheable 这个注解用于修饰方法or类,当我们访问它修饰的方法时,优先从缓存中获取,若缓存中存在,则直接获取缓存的值;缓存不存在时,执行方法,并将结果写入缓存 这个注解,有两个比较核心的设置 ...
添加spring-boot-starter-data-redis依赖。 使用启用缓存注解(@EnableCaching)。 需要缓存的对象实现Serializable接口。 使用@Cacheable注解缓存查询的结果。 遇到问题 在上面我们通过 spring boot 提供的 redis 实现了查询对象缓存这样一个功能,有下面几个问题: ...
当方法的value属性进行了设置(如@Cacheable(value={"cache1", "cache2"})),则有两个cache;此时...
@Cacheable(value = "users", key = "#id") public User getUserById(Long id) { // 查询用户并返回 } } 在这个例子中,@Cacheable 注解用于标记 getUserById 方法,而 value 属性则用于指定缓存的存储区域的名称。由于我们正在使用 Redis 作为缓存,因此 Redis 中的 key 将由 Cacheable 注解中的 key 属...
添加spring-boot-starter-data-redis依赖。 使用启用缓存注解(@EnableCaching)。 需要缓存的对象实现Serializable接口。 使用@Cacheable注解缓存查询的结果。 遇到问题 在上面我们通过 spring boot 提供的 redis 实现了查询对象缓存这样一个功能,有下面几个问题: ...