少年阿宾

那些青春的岁月

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

@CacheName指定缓存实例注解

@CacheKeyMethod:缓存key生成注解

---------------------------------读取-------------------------------------------

@ReadThroughAssignCache(assignedKey = "SomePhatKey", namespace = "Echo", expiration = 3000): 读取指定key缓存

@ReadThroughSingleCache(namespace = SINGLE_NS, expiration = 0):读取单个缓存

@ReadThroughMultiCache(option = @ReadThroughMultiCacheOption(generateKeysFromResult = true)):读取多个缓存

@ReadThroughMultiCacheOption(generateKeysFromResult = true) 读取多个缓存操作generateKeysFromResult 通过结果生成key

 

---------------------------------更新-------------------------------------------

@UpdateAssignCache(assignedKey = "SomePhatKey", namespace = "Echo", expiration = 3000): 指定key更新缓存

@UpdateSingleCache(namespace = SINGLE_NS, expiration = 2): 更新单个缓存(namespace 命名空间, expiration 失效时间单位秒)

@UpdateMultiCache(namespace = "Bravo", expiration = 300): 更新多个缓存

 

---------------------------------失效-------------------------------------------

@InvalidateAssignCache(assignedKey = "SomePhatKey", namespace = "Echo") : 指定key失效缓存

@InvalidateSingleCache(namespace = SINGLE_NS):失效单个缓存

@InvalidateMultiCache(namespace = "Delta") : 失效多个缓存

 

---------------------------------参数-------------------------------------------

@ParameterDataUpdateContent标记方法的参数作为更新内容。这个注解应结合Update*Cache注解使用

@ParameterValueKeyProvider: 标记将方法的参数做为计算缓存key.如果方法被注解的对象标记CacheKeyMethod的方法将会用来生成缓存key否则调用toString()生成

@ParameterValueKeyProvider(order=0) 属性表示如果多个参数做为key时需提供参数顺序

与@ParameterValueKeyProvider类似的注解有:

{

  @ReturnValueKeyProvider返回值对象中计算key

}

---------------------------------泛型处理-------------------------------------------

@BridgeMethodMappings({ @BridgeMethodMapping(methodName = "updateUser", 

erasedParamTypes = { Object.class }, targetParamTypes = { AppUser.class }) }): 泛型桥接注解

methodName 指定方法

erasedParamTypes 擦除对象类型

targetParamTypes 目标转换类型

 

 

---------------------------------计数器-------------------------------------------

@InvalidateAssignCache  :在给的计算器上加1. 如果不存在则初始化为1

@DecrementCounterInCache 在给的计数器上减1

 

@ReadCounterFromCache  :读取计数器

@UpdateCounterFromCache 更新计数器

 

 

 

Simple-Spring-Memcached代码阅读之BridgeMethod

 

http://www.colorfuldays.org/program/java/bridgemethod%E7%9A%84%E4%BD%9C%E7%94%A8/

 

http://www.colorfuldays.org/tag/ssm/   这个系列不错

 

b. 以bean的方式使用Cache对象

某些场景我们希望更便捷地自己手动来管理缓存数据,此时需要使用Simple-Spring-Memcached配置中定义的bean。以上面的配置文件为例,使用方法如下
bean的注入:

@Autowired private Cache appCache;

bean的使用:

appCache.set(Constants.CACHE_KEY + members.getMemberId(), 3600,cacheValue);
posted on 2013-04-03 18:43 abin 阅读(1493) 评论(2)  编辑  收藏 所属分类: memcache

Feedback

# re: simple-spring-memcached-3.0.x 注解详解 2016-01-20 22:20
@InvalidateAssignCache :在给的计算器上加1. 如果不存在则初始化为1
这个是错的,应该是@IncrementCounterInCache  回复  更多评论
  

# re: simple-spring-memcached-3.0.x 注解详解 2016-01-20 22:22
@增
详见参考,去看看它里面的CounterTest的测试类,就明白是怎么回事了!
https://github.com/batizhao/spring-mybatis-memcached/blob/master/ssm3-mybatis2-memcached/src/main/java/me.batizhao/cache/Counter.java
找了好久,才知道是怎么写的,官方文档都没说该咋写!真感谢这位。。。  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: