@Cacheable 拼接key的操作

网友投稿 816 2023-02-12

@Cacheable 拼接key的操作

@Cacheable 拼接key的操作

我就废话不多说了,大家还是直接看代码吧~

@Cacheable(value = "page_userLAIao",key ="T(String).valueOf(#page).concat('-').concat(#pageSize)",unless = "#result=null")//由于page是int型,concat要求变量必须为String,所以强转一下

@Override

public List paghttp://e(int paghttp://e, int pageSize) {

return userMAPPer.page(page,pageSize);

}

补充:记一个spring缓存Cacheable注解key设置问题

spring的Cacheable注解用来设置缓存,其中的key属性为spel表达式,如果要设置常量,则需要用''包裹,如:

@Cacheable(value = CacheConstant.APPLICATION,key = "'id_map'")

此处的"'id_map'"代表key设置了一个常量,如果没有'',则会报错

org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'lang_code_map' cannot be found on object of type 'org.springframework.cache.interceptor.CacheExpressionRootObject' - maybe not public or not valid?

意思为在缓存表达式根对象上找不到指定属性,说明如果不加'',则id_map作为属性解析

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:小程序可以用vue开发(vuejs开发小程序)
下一篇:SpringCache之 @CachePut的使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~