Java使用 Redis

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangbinlong/article/details/78559048
package com.nuanshui.frms.exchange.utils.redis;

import java.util.Map;
import java.util.concurrent.TimeUnit;

import javax.annotation.Resource;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.MarkerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.HashOperations;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;

/**
 * <p>Title: RedisService </p>
 * <p>Description: </p>
 * <p>Company: HeatedLoan </p>
 * @author Evan
 * @date 2017年8月13日 下午4:06:48
 */
@Service
public class RedisService {
   
   private final static Logger LOG = LoggerFactory.getLogger(RedisService.class);
   
   @Autowired
   private StringRedisTemplate redisTemplate;
   
   public void delete(String key){
      try {
         redisTemplate.delete(key);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis删除key异常:【{}】", e.getMessage());
      }
   }
   
   public Map<String, Object> getMap(String key){
      Map<String,Object> map = null;
      try {
         HashOperations<String, String, Object>  hash = redisTemplate.opsForHash();
           map = hash.entries(key);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis取map值异常:【{}】", e.getMessage());
      }
      return map;
   }
   
   public String get(String key){
      String value = "";
      try {
         value = redisTemplate.opsForValue().get(key);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis取string值异常:【{}】", e.getMessage());
      }
      return value;
   }
   
   public void set(String key, String value, long timeout){
      try {
         redisTemplate.opsForValue().set(key, value, timeout, TimeUnit.DAYS);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis存有效值异常:【{}】", e.getMessage());
      }
   }
   
   public void setByMins(String key, String value, long timeout){
      try {
         redisTemplate.opsForValue().set(key, value, timeout, TimeUnit.MINUTES);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis存有效值异常:【{}】", e.getMessage());
      }
   }
   
   public void set(String key, String value){
      try {
         redisTemplate.opsForValue().set(key, value);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis存永久值异常:【{}】", e.getMessage());
      }
   }
   
   public void set(String key, Map<? extends String, ? extends Object> map, long timeout){
      try {
         redisTemplate.opsForHash().putAll(key, map);
         redisTemplate.expire(key, timeout, TimeUnit.DAYS);
      } catch (Exception e) {
         LOG.error(MarkerFactory.getMarker("sendMail"),"Redis存map值异常:【{}】", e.getMessage());
      }
   }
   
}

猜你喜欢

转载自blog.csdn.net/zhangbinlong/article/details/78559048
今日推荐