8.3 Redis与Cache

Redis与Cache联合起来可以非常方便地使用Redis服务,Redis对象通过use()方法来获取到Cache对象,Cache对象提供了丰富的API用于使用Redis服务,下面是具体使用示例:

  1. public void redisDemo() {
  2. // 获取名称为bbs的Redis Cache对象
  3. Cache bbsCache = Redis.use("bbs");
  4. bbsCache.set("key", "value");
  5. bbsCache.get("key");
  6.  
  7. // 获取名称为news的Redis Cache对象
  8. Cache newsCache = Redis.use("news");
  9. newsCache.set("k", "v");
  10. newsCache.get("k");
  11.  
  12. // 最先创建的Cache将成为主Cache,所以可以省去cacheName参数来获取
  13. bbsCache = Redis.use(); // 主缓存可以省去cacheName参数
  14. bbsCache.set("jfinal", "awesome");
  15. }

以上代码中通过”bbs”、”news”做为use方法的参数分别获取到了两个Cache对象,使用这两个对象即可操作其所对应的Redis服务端。

通常情况下只会创建一个RedisPlugin连接一个redis服务端,使用Redis.use().set(key,value)即可。

注意:使用 incr、incrBy、decr、decrBy 方法操作的计数器,需要使用 getCounter(key) 进行读取而不能使用 get(key),否则会抛反序列化异常。同理:incrBy(key, value) 操作不能使用 set(key, value) 。