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);
}







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

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

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

在Springboot下使用Jedis对redis的操作, java 客户端jedis的具体配置(shardedJedispool)。...
  • LOPYasd
  • LOPYasd
  • 2017年05月10日 19:24
  • 2578

Springboot bean注入 ---- Jedis注入

@Configuration public class RedisDao{ ... } @Bean public RedisDao redisFactory(){ ......
  • u012915455
  • u012915455
  • 2017年06月05日 13:56
  • 869

SpringBoot 集成Jedis操作Redis缓存

在使用SpringBoot构建SpringCloud微服务时,需要用到Redis做数据缓存,提高业务逻辑的处理。所以就不得不让SpringBoot集成Redis,但如果使用官方的Redis去操作的话,...
  • u011051912
  • u011051912
  • 2017年07月10日 15:24
  • 2598

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

在Springboot下使用Jedis操作redis,jedis在代码中的使用
  • LOPYasd
  • LOPYasd
  • 2017年05月11日 11:21
  • 957

SpringBoot-Redis之通过spring注入JedisPool

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

SpringBoot系列—Redis使用

SpringBoot对redis的支持是通过Spring Data Redis 来时闲的,使用之前引入jar包: compile('org.springframework.boot:spring-bo...
  • jeofey
  • jeofey
  • 2017年06月19日 16:20
  • 1795

Redis系列一 - springboot 集成 redis Demo和原理

本文介绍如何通过springboot集成redis并简单介绍其原理。 @ConfigurationProperties注解 RedisAutoConfiguration redis连接池...
  • hry2015
  • hry2015
  • 2017年07月03日 22:42
  • 3034

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

通过上面一些笔记的介绍, 我们可以自己动手去集成Redis, 没有什么难度的 还有Spring Boot官方提供了Spring-Data-Redis的Starter POM...
  • a67474506
  • a67474506
  • 2016年09月20日 13:37
  • 41070

spring boot中使用redis -Jedis

1、加入jar包依赖 使用maven形式 org.springframework.boot spring-boot-starter-redis version>1.4.7.REL...
  • xiao______xin
  • xiao______xin
  • 2017年06月29日 13:49
  • 999
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:springboot - jedis
举报原因:
原因补充:

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