引入 jedis 依赖:

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<!-- Dec 15, 2019 -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.2.0</version>
</dependency>

简单测试:

public class TestRedis {
public static void main(String[] args) {
Jedis jedis = new Jedis("localhost", 6379);
jedis.set("foo", "bar");
String value = jedis.get("foo");
System.out.println(value);
}
}

常用数据类型测试:

public class TestRedisCommands {
private Jedis jedis; @Before
public void setUp() {
jedis = new Jedis("localhost", 6379);
} @Test
public void testBasicString(){
jedis.set("name","meepo");
System.out.println(jedis.get("name")); //执行结果:meepo jedis.append("name","dota");
System.out.println(jedis.get("name")); //执行结果:meepodota jedis.set("name","poofu");
System.out.println(jedis.get("name")); //执行结果:poofu jedis.del("name");
System.out.println(jedis.get("name")); //执行结果:null jedis.mset("name","meepo","dota","poofu"); //同时设置多个字符串
System.out.println(jedis.mget("name","dota"));
} @Test
public void testMap(){
Map<String, String> user = new HashMap<String, String>();
user.put("name", "meepo");
user.put("pwd", "password");
user.put("age", "18");
jedis.hmset("user", user);
//结果是一个泛型的List
//第一个参数是key,后面的参数是map中的对象的key,可以是多个
List<String> rsmap = jedis.hmget("user", "name");
System.out.println(rsmap); //执行结果:[meepo] jedis.hdel("user","age");
System.out.println(jedis.hmget("user", "age")); //执行结果:null
System.out.println(jedis.hlen("user")); //执行结果:2
System.out.println(jedis.exists("user"));//执行结果:true
System.out.println(jedis.hkeys("user"));//执行结果:[pwd, name]
System.out.println(jedis.hvals("user"));//执行结果:[meepo, password] Iterator<String> iter=jedis.hkeys("user").iterator();
while (iter.hasNext()){
String key = iter.next();
System.out.println(key+": "+jedis.hmget("user", key));
}
} @Test
public void testList(){
System.out.println(jedis.lrange("user",0,-1));
jedis.lpush("user","spring");
jedis.lpush("user","struts");
jedis.lpush("user","hibernate");
System.out.println(jedis.lrange("user",0,-1));
} @Test
public void testSet(){
jedis.sadd("sname","meepo");
jedis.sadd("sname","dota");
jedis.sadd("sname","poofu");
jedis.sadd("sname","noname");
jedis.srem("sname","noname");
System.out.println(jedis.smembers("sname")); //获取所有的value
System.out.println(jedis.sismember("sname", "meepo"));//判断meepo是否为集合的元素
System.out.println(jedis.srandmember("sname")); //随机获取一个元素
System.out.println(jedis.scard("sname")); //返回集合的元素数量
} @Test
public void test() throws InterruptedException {
System.out.println(jedis.keys("*")); //返回当前库中所有的key
System.out.println(jedis.keys("*name"));//返回的匹配的key
System.out.println(jedis.del("sanmdde"));//删除key,成功返回1,失败返回0
System.out.println(jedis.ttl("sname"));//返回key的有效时间,-1表示永远有效
jedis.setex("mykey", 10, "seconds");//指定key的存活时间为10秒
Thread.sleep(5000);
System.out.println(jedis.ttl("mykey"));//剩余5秒
System.out.println(jedis.exists("key"));//检查key是否存在
System.out.println(jedis.rename("mykey","yourkey")); //重命名
System.out.println(jedis.get("mykey"));//返回为null jedis.rpush("a","1");
jedis.lpush("a","6");
jedis.lpush("a","3");
jedis.lpush("a","9");
System.out.println(jedis.lrange("a",0,-1)); //[9, 3, 6, 1]
System.out.println(jedis.sort("a")); //[1, 3, 6, 9]
System.out.println(jedis.lrange("a",0,-1));
}
}

命令参考:http://www.redis.cn/commands.html

API参考:https://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.html

Jedis 基本使用的更多相关文章

  1. Jedis的使用

    Redis是常用的key-value存储服务器,Java使用Redis有很多方法,其中官方推荐的是Jedis. 使用Jedis,首先是下载jedis-x.x.x.jar文件并导入工程,然后运行Redi ...

  2. redis 学习笔记(7)-cluster 客户端(jedis)代码示例

    上节学习了cluster的搭建及redis-cli终端下如何操作,但是更常用的场景是在程序代码里对cluster读写,这需要redis-client对cluster模式的支持,目前spring-dat ...

  3. jedis支持哨兵主从配置role为slave

    jedis功能强大,但是不能像nodejs一样指定从slave中读数据,使数据量读写量较大时读写分离,减少redis压力. 我们可以利用jedis中的方法封装一个类似于此的方法. github地址: ...

  4. Spring + Jedis集成Redis(集群redis数据库)

    前段时间说过单例redis数据库的方法,但是生成环境一般不会使用,基本上都是集群redis数据库,所以这里说说集群redis的代码. 1.pom.xml引入jar <!--Redis--> ...

  5. (转)java redis使用之利用jedis实现redis消息队列

    应用场景 最近在公司做项目,需要对聊天内容进行存储,考虑到数据库查询的IO连接数高.连接频繁的因素,决定利用缓存做. 从网上了解到redis可以对所有的内容进行二进制的存储,而java是可以对所有对象 ...

  6. Jedis 使用范例

    public class RedisUtil { Logger logger = LoggerFactory.getLogger(RedisUtil.class); private JedisPool ...

  7. 【Redis】:Jedis 使用

    Redis 支持很多语言, 例如C#,RUBY,JAVA 等, Jedis是redis的java版本的客户端实现 一个简单的Jedis使用 依赖第三方包jedis-2.7.2.jar commons- ...

  8. 用Jedis连接Redis

    jedis中的方法名,和Redis的命令几乎一样 1.jar包,作为测试只需要一个jar 2.代码 package com; import java.util.HashMap; import java ...

  9. 什么是Jedis?

    Jedis 是 Redis 官方首选的 Java 客户端开发包. 实例方法: 1 import redis.clients.jedis.* 1 2 3 Jedis jedis = new Jedis( ...

  10. Java中使用Jedis操作Redis(转载)

    整理 1.字符串 添加:set keyname value 查询:get keyname 拼接:append keyname value 删除:del keyname 添加多个: mset keyna ...

随机推荐

  1. VScode 使用 CMake 入门

    参考 CMake 入门实战 在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下: 编写 CMake 配置文件 CMakeLists.txt . 执行命令 cmake PA ...

  2. Shell脚本实现乱序排列文件内容的多种方法(洗牌问题)

    洗牌问题:洗一副扑克,有什么好办法?既能洗得均匀,又能洗得快?即相对于一个文件来说怎样高效率的实现乱序排列? ChinaUnix 确实是 Shell 高手云集的地方,只要你想得到的问题,到那里基本上都 ...

  3. ES6常用的数值转换方法

    <script type="text/javascript"> // Number常用方法 /* Number.isFinite() 用来检查一个数值是否为有限的(fi ...

  4. 13.Vue.js 组件

    组件(Component)是 Vue.js 最强大的功能之一. 组件可以扩展 HTML 元素,封装可重用的代码. 组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽 ...

  5. 【力扣】922. 按奇偶排序数组 II

    给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数. 对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数:当 A[i] 为偶数时, i 也是偶数. 你可以返回任何满足上述条件的数组 ...

  6. 【C/C++】学生排队吃饭问题

    问题: 有n个学生,学生们都在排队取餐,第个学生在L国时刻来到队尾,同一时刻来的学生编号小的在前,每个时刻当队列不为空时,排在队头的同学就可以拿到今天的中餐并离开队伍,若第个学生R团时刻不能拿到中餐, ...

  7. 【C#】【MySQL】【GridView】删除出现Parameter index is out of range

    [编程语言]C# [数据库]MySQL [控件]GridView [问题描述]GridView控件中自带[删除],[编辑],[选择],三个按钮[编辑],[选择]正常使用,但是在使用删除时,却报错Par ...

  8. Linux实体服务器添加网卡

    目录 一.简介 二.配置 三.添加网卡 四.总结 一.简介 服务器如果搭配了网口,在插入网线或者光纤后会亮灯.如果发现不亮,可以关闭机器查看亮不亮,因为有的时候系统会把网口禁用,进入到系统反而不亮了, ...

  9. EmmyLua 注解功能

    前言 网上配置 EmmyLua 的方法很多,此处就不做赘述(因此前提是你已经安装配置完EmmyLua) 本文仅是对 EmmyLua插件 内 注解功能 用法的代码演示.因为网上大部分EmmyLua配置教 ...

  10. GDAL重投影重采样像元配准对齐

    研究通常会涉及到多源数据,需要进行基于像元的运算,在此之前需要对数据进行地理配准.空间配准.重采样等操作.那么当不同来源,不同分辨率的数据重采样为同一空间分辨率之后,各个像元不一一对应,有偏移该怎么办 ...