jedis依赖_Spring整合Jedis及Jedis基本操作

Jedis简介

  • Redis不仅是使用命令来操作,现在基本上主流的语言都有客户端支持,比如java、C、C#、C++、php、Node.js、Go等
  • 在官方网站里列一些Java的客户端,有Jedis、Redisson、Jredis、JDBC-Redis、等其中官方推荐使用Jedis和Redisson。 在企业中用的最多的就是Jedis,下面我们就重点学习下Jedis。
    Jedis同样也是托管在github上,github地址: https://github.com/xetorthio/jedis ;

Spring整合Jedis

  • 创建maven项目(略)
  • 部署SSM框架(略)
  • 在pom.xml中添加Jedis依赖
redis.clients    jedis    2.9.0org.springframework.data    spring-data-redis    2.0.12.RELEASE
  • 在resources目录创建redis.properties文件并配置redis连接信息
redis.usePool=trueredis.hostName=129.28.64.165redis.port=6379redis.password=123456
  • 在resources目录下创建spring-context-redis.xml,依赖spring容器创建redisTemplate对象
<?xml version="1.0" encoding="UTF-8"?>
  • 测试Jedis整合结果
    • 导入测试依赖库
junit    junit    4.12org.springframework    spring-test    5.1.9.RELEASE
    • 创建测试类
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class RedisTemplateTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void test(){        System.out.println(redisTemplate);    }}

Jedis基本操作

  • string操作
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class StringTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void testSet(){        redisTemplate.boundValueOps("name").set("kangshifu");    }    @Test    public void testGet(){        String v = redisTemplate.boundValueOps("name").get();        System.out.println(v);    }}
  • hash操作
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class HashTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void testSet(){        redisTemplate.boundHashOps("map").put("k1","v1");        redisTemplate.boundHashOps("map").put("k2","v2");    }    @Test    public void testGet(){        //根据key取value       Object v = redisTemplate.boundHashOps("map").get("k1");       System.out.println(v);       //获取所有键值对        Map m = redisTemplate.boundHashOps("map").entries();        Set keys = m.keySet();        Iterator it = keys.iterator();        while(it.hasNext()){            String key = it.next();            String value = (String)m.get(key);            System.out.println(key+"---"+value);        }    }}
  • List操作
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class ListTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void testSet(){        //redisTemplate.boundListOps("list1").rightPush("a",);        //redisTemplate.boundListOps("list1").rightPush("a","b");        redisTemplate.boundListOps("list1").rightPushAll("a","b","c","d","e");    }    @Test    public void testGet(){        //String v = redisTemplate.boundListOps("list1").leftPop();        //String v = redisTemplate.boundListOps("list1").rightPop();        long size = redisTemplate.boundListOps("list1").size();        List list = redisTemplate.boundListOps("list1").range(0,size-1);        list.forEach((i)-> System.out.println(i));        System.out.println(list);    }}
  • 无序set
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class SetTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void testSet(){        redisTemplate.boundSetOps("set1").add("a","b","c","d");    }    @Test    public void testGet(){        Set set1 = redisTemplate.boundSetOps("set1").members();        System.out.println(set1);    }}
  • 有序set
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({"classpath:spring-context.xml","classpath:spring-context-redis.xml"})public class ZSetTest {    @Autowired    private StringRedisTemplate redisTemplate;    @Test    public void testSet(){        redisTemplate.boundZSetOps("set2").add("aaa",1);        redisTemplate.boundZSetOps("set2").add("bbb",2);        redisTemplate.boundZSetOps("set2").add("ccc",3);        redisTemplate.boundZSetOps("set2").add("ddd",4);    }    @Test    public void testGet(){        long l =redisTemplate.boundZSetOps("set2").size();        Set set2 = redisTemplate.boundZSetOps("set2").range(0,l);        System.out.println(set2);    }}

结束语

“头条号”新人,从事互联网行业工作10年,期望与大家的技术交流,多多关照!

如果此文章对你有帮助,欢迎关注、评论!

95cab96cc503a1ec4296dee630b3dde6.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值