springboot - jedis

原创 2016年08月31日 16:37:02
/**
 * 描述:Redis初始化服务Service
 * author qiaobin   2016/8/31 14:18.
 */
public interface RedisTemplate {

    /**
     * 功能描述:获取key值
     *
     * @param key 键
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public Object get(String key);

    /**
     * 功能描述:获取key值
     *
     * @param key 键
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public Object get(byte[] key);

    /**
     * 功能描述:设置键值
     *
     * @param key   键
     * @param value 值
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public void set(String key, String value);

    /**
     * 功能描述:获取key值
     *
     * @param key   键
     * @param value 值
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public void set(byte[] key, byte[] value);

    /**
     * 功能描述:删除键值
     *
     * @param key 键
     * @author qiaobin
     * @date 2016/8/31  14:37
     */
    public void delete(String key);

    /**
     * 功能描述:删除键值
     *
     * @param key 键
     * @author qiaobin
     * @date 2016/8/31  14:37
     */
    public void delete(byte[] key);

    /**
     * 功能描述:设置键值
     *
     * @param key    键
     * @param value  值
     * @param second 过期时间(秒)
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public void setExpire(String key, int second, String value);

    /**
     * 功能描述:设置键值
     *
     * @param key    键
     * @param value  值
     * @param second 过期时间(秒)
     * @author qiaobin
     * @date 2016/8/31  14:35
     */
    public void setExpire(byte[] key, int second, byte[] value);

}

package com.scistor.cache.service.impl;

import com.scistor.cache.service.RedisTemplate;
import lombok.Getter;
import lombok.Setter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Repository;
import redis.clients.jedis.Jedis;

/**
 * 描述:Redis初始化服务
 * author qiaobin   2016/8/31 14:19.
 */
@Repository
public class RedisTemplateImpl implements RedisTemplate {

    @Autowired
    private Environment environment;

    private Jedis jedis;

    @Getter
    @Setter
    private String url;

    @Getter
    @Setter
    private int port;

    /**
      * 功能描述:打开redis连接
      * @author qiaobin
      * @date 2016/8/31  14:34
      */
    private void open() {
        url = environment.getRequiredProperty("redis.host");
        port = Integer.parseInt(environment.getRequiredProperty("redis.port"));
        jedis = new Jedis(url, port);
    }

    /**
      * 功能描述:获取key值
      * @author qiaobin
      * @date 2016/8/31  14:35
      * @param key 键
      */
    public Object get(String key) {
        this.open();
        Object obj = jedis.get(key);
        this.jedis.close();
        return obj;
    }

    /**
      * 功能描述:获取key值
      * @author qiaobin
      * @date 2016/8/31  14:35
      * @param key 键
      */
    public Object get(byte[] key) {
        this.open();
        Object obj = jedis.get(key);
        this.jedis.close();
        return obj;
    }

    /**
     * 功能描述:设置键值
     * @author qiaobin
     * @date 2016/8/31  14:35
     * @param key 键
     * @param value 值
     */
    public void set(String key, String value) {
        this.open();
        jedis.set(key, value);
        this.jedis.close();
    }

    /**
     * 功能描述:获取key值
     * @author qiaobin
     * @date 2016/8/31  14:35
     * @param key 键
     * @param value 值
     */
    public void set(byte[] key, byte[] value) {
        this.open();
        jedis.set(key, value);
        this.jedis.close();
    }

    /**
      * 功能描述:删除键值
      * @author qiaobin
      * @date 2016/8/31  14:37
      * @param key 键
      */
    public void delete(String key) {
        this.open();
        jedis.del(key);
        this.jedis.close();
    }

    /**
      * 功能描述:删除键值
      * @author qiaobin
      * @date 2016/8/31  14:37
      * @param key 键
      */
    public void delete(byte[] key) {
        this.open();
        jedis.del(key);
        this.jedis.close();
    }



    /**
     * 功能描述:设置键值
     * @author qiaobin
     * @date 2016/8/31  14:35
     * @param key 键
     * @param value 值
     * @param second 过期时间(秒)
     */
    public void setExpire(String key, int second, String value) {
        this.open();
        jedis.setex(key, second, value);
        this.jedis.close();
    }

    /**
     * 功能描述:设置键值
     * @author qiaobin
     * @date 2016/8/31  14:35
     * @param key 键
     * @param value 值
     * @param second 过期时间(秒)
     */
    public void setExpire(byte[] key, int second, byte[] value) {
        this.open();
        jedis.setex(key, second, value);
        this.jedis.close();
    }

}


调用方式

@Resource
private RedisTemplate redisTemplate;
public void method(){
    redisTemplate.get(key);
}







版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

在Springboot上使用jedis来操作缓存redis --jedis的配置

在Springboot下使用Jedis对redis的操作, java 客户端jedis的具体配置(shardedJedispool)。

spring boot 自学笔记(四) Redis集成—Jedis

Spring boot 集成Redis ,使用JedisPool连接池和Jedis客户端。
  • i_vic
  • i_vic
  • 2016-11-09 09:43
  • 4561

spring boot 自学笔记(三) Redis集成—RedisTemplate

Spring boot 基于Spring,  Redis集成与Spring大同小异。 文章示例代码均以前篇笔记为基础增加修改,直接上代码: pom.xml  Redis相关依赖: <project ...
  • i_vic
  • i_vic
  • 2016-11-08 13:20
  • 24876

Redis-3.x集群配置(RedisCluster+SpringBoot+Jedis)

Redis-3.2.4集群配置(RedisCluster+SpringBoot+Jedis)

SpringBoot学习笔记(5) Spring Boot集成Redis实现自动配置

通过上面一些笔记的介绍, 我们可以自己动手去集成Redis, 没有什么难度的 还有Spring Boot官方提供了Spring-Data-Redis的Starter POM

spring boot 自学笔记(三) Redis集成—RedisTemplate

spring boot 基于Spring,  Redis集成与Spring大同小异。 文章示例代码均以前篇笔记为基础增加修改,直接上代码: pom.xml  Redis相关依赖: [ht...

springboot(三):Spring boot中Redis的使用

spring boot对常用的数据库支持外,对nosql 数据库也进行了封装自动化。 redis介绍 Redis是目前业界使用最广泛的内存数据存储。相比memcached,redis支持更丰富...

在Springboot下使用Jedis操作redis---jedis在代码中的使用

在Springboot下使用Jedis操作redis,jedis在代码中的使用

SpringBoot-Redis之通过spring注入JedisPool

springboot驱动注解,使用spring注入JedisPool便可封装自己的redis工具类。这种方式通过jedisPool,以后讲通过spring data redis实现。 springBo...
  • Kincym
  • Kincym
  • 2017-06-06 16:34
  • 1026

spring boot实际应用(五) redis

redis是一个目前非常流行的缓存数据库,具体技术细节这里就不做描述了,下面说下干货,怎么实际应用 目前项目都使用spring boot来实现了,SO 我也来点新鲜的,说实话确实好使。 先说下...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)