Ejemplo n.º 1
0
 // String数据类型 存储一对键值 仅支持value为String类型
 public void setString(final String key, final String value) {
   redisTemplate.execute(
       new RedisCallback<Serializable>() {
         public Serializable doInRedis(RedisConnection connection) throws DataAccessException {
           connection.set(
               redisTemplate.getStringSerializer().serialize(key),
               redisTemplate.getStringSerializer().serialize(value));
           return null;
         }
       });
 }
Ejemplo n.º 2
0
 public boolean setnx(final String key, final String value, Long expireTime) {
   Boolean result =
       redisTemplate.execute(
           new RedisCallback<Boolean>() {
             @Override
             public Boolean doInRedis(RedisConnection connection) throws DataAccessException {
               return connection.setNX(key.getBytes(), value.getBytes());
             }
           });
   if (result) redisTemplate.expire(key, expireTime, TimeUnit.MILLISECONDS);
   return result;
 }
Ejemplo n.º 3
0
 /**
  * String数据类型 读取键为key的值仅支持value为String类型
  *
  * @param key
  * @return 字符串
  */
 public Serializable getString(final String key) {
   return redisTemplate.execute(
       new RedisCallback<Serializable>() {
         @Override
         public Serializable doInRedis(RedisConnection connection) throws DataAccessException {
           byte[] byteKey = redisTemplate.getStringSerializer().serialize(key);
           if (connection.exists(byteKey)) {
             byte[] value = connection.get(byteKey);
             String strValue = redisTemplate.getStringSerializer().deserialize(value);
             return strValue;
           }
           return null;
         }
       });
 }