通过Jedis操作Redis[通俗易懂]

通过Jedis操作Redis[通俗易懂]jedis是redis的java版本的客户端实现,Jedis提供了完整Redis命令。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

jedis是redis的java版本的客户端实现,Jedis提供了完整Redis命令。

目录

maven依赖

测试是否连接redis

Jedis操作String

输出结果

Jedis操作List

输出结果

Jedis操作Map

输出结果

Jedis操作Set

输出结果

Jedis操作Zset

输出结果

Jedis事务操作


maven依赖

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>3.7.0</version>
    </dependency>

测试是否连接redis

Jedis jedis = new Jedis("127.0.0.1",6379);
System.out.println(jedis.ping());

输出结果为PONG,则说明连接成功,否则连接失败,控制台会有异常信息。

Jedis操作String

        jedis.set("user", "zhangsan");
        // 获取存储的数据并输出
        System.out.println("redis 存储的字符串为: "+ jedis.get("user"));
        jedis.del("user");//删除
        System.out.println("redis 存储的字符串为: "+ jedis.get("user"));

输出结果

redis 存储的字符串为: zhangsan
redis 存储的字符串为: null

Jedis操作List

        //存储数据到列表中
        jedis.lpush("name-list", "zhangsan");
        jedis.lpush("name-list", "lisi");
        jedis.lpush("name-list", "wangwu");
        // 获取存储的数据并输出
        List<String> list = jedis.lrange("name-list", 0 ,2);
        for(int i=0; i<list.size(); i++) {
            System.out.println("列表项为: "+list.get(i));
        }

输出结果

列表项为: wangwu
列表项为: lisi
列表项为: zhangsan

Jedis操作Map

        Map<String,String> map=new HashMap<>();
        map.put("username","zhangsan");
        map.put("age","22");
        map.put("sex","男");
        //使用 hmset 设置值
        jedis.hmset("user",map);
        // hmget 获取值 取出user中的name 后面key可以跟多个
        List<String> result=jedis.hmget("user","username","age","sex");
        System.out.println(result);
        jedis.hdel("user","age");//移除某项

输出结果

[zhangsan, 22, 男]

Jedis操作Set

        jedis.sadd("users","zhangsan");
        jedis.sadd("users","lisi");
        System.out.println(jedis.smembers("users"));//获取加入的value值
        System.out.println(jedis.srem("users","zhangsan")); //移除某项

输出结果

[zhangsan, lisi]

Jedis操作Zset

        //存放数据 按score 进行排序
        jedis.zadd("user",12,"lisi");
        jedis.zadd("user",56,"zhangsan");
        jedis.zadd("user",89,"wangwu");
        jedis.zadd("user",58,"zhaoliu");
        System.out.println(jedis.zrange("user",0,4));//获取加入user中的value

输出结果

[lisi, zhangsan, zhaoliu, wangwu]

Jedis事务操作

        Transaction multi = jedis.multi();
        try {
            multi.set("user","zhangsan");
            multi.exec();//执行事务
        }catch (Exception e){
            multi.discard();//放弃事务
            e.printStackTrace();
        }finally {
            jedis.close();//关闭连接
        }

Jedis连接池操作

        //设置连接池的配置对象
        JedisPoolConfig config = new JedisPoolConfig();
        //设置连接池参数
        config.setMaxTotal(30);
        config.setMaxIdle(10);
        //获取连接池对象
        jedisPool = new JedisPool(config, "127.0.0.1", 6379);
        try{
            jedis = jedisPool.getResource();
        }catch(Exception e){
            e.printStackTrace();

        }

Jedis对key的其它操作命令

jedis.flushDB();//清空数据库
jedis.close();//关闭连接
jedis.exists("key");//是否存在名为key的key
Set<String> keys = jedis.keys("*");//获取所有的key
jedis.type("key");查看key的类型
jedis.randomKey();//随机一个键值
jedis.rename("oldkey","newkey");//重命名key
jedis.dbSize();//返回当前数据库所有key的数目
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195818.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • IntelliJ IDEA中怎么全局搜索替换(整个项目)(Eclipse)

    IntelliJ IDEA中怎么全局搜索替换(整个项目)(Eclipse)IntelliJIDEA使用教程(总目录篇)我们用Eclipse或者IntelliJIDEA编程,有时候需要将整个项目的某个字符串替换成其他的。全局搜索我会,我还给调成ctrl+g了呢,但是遇到要全局(整个项目)替换字符串。哎哟,我有点蒙了。这不换了编辑器吗。我用的是eclipse的keymap而且电脑又不是mac。那么问题来啦。怎么找快捷键呢。如下;额,顺便说下…

    2025年6月9日
    1
  • 8个免费和最佳开源视频流服务器软件

    视频流服务器是系统软件,无论用户使用什么操作系统,都可以使用户流视频。某些视频流服务器基于Linux与操作系统无关,可以安装在任何计算机上。很少有人针对特定的平台,例如Windows,Linux或Mac。什么是视频流服务器?远程提供和管理视频媒体内容的服务器软件称为“视频流服务器”。并非所有的视频播放器都可以与视频流服务器一起使用,而是需要一个完美的视频播放器来与远程服务器一起使用来缓冲和…

    2022年4月5日
    96
  • 安全帽识别软件使用中常见问题分析[通俗易懂]

    安全帽识别软件使用中常见问题分析[通俗易懂]一、安全帽识别软件的主要功能是什么?安全帽识别是通俗的说法,相对准确的名称应该是安全帽佩戴检测,是用深度学习的算法对视频流进行分析,通过人工智能来判断视频中的人是否未佩戴安全帽,如果未佩戴,则触发告警规则。二、安全帽识别软件的技术成熟吗?2012年人工智能领域的卷积神经网络迎来重大突破,深圳强美随即将此尖端技术应用于工业安全监控,因为掌握海量样本数据的先天优势,鹰眸安全帽(佩戴检测)识别系…

    2022年5月19日
    51
  • dpkg 命令使用「建议收藏」

    dpkg 命令使用「建议收藏」说明:dpkg用于:管理系统的里deb包,可以对其安装、卸载、deb打包、deb解压等操作,与之相关apt-get工具可以在线下载deb包安装参数:-i:安装软件包;-r:删除软件包;-P:删除软件包的同时删除其配置文件;-L:显示于软件包关联的文件;-l:显示已安装软件包列表;–unpack:解开软件包;-c:显示软件包内文件列表;–confiugre:配置软件包。1.安装软件命令:dpkg-i<.debfilename>实例:

    2022年5月11日
    32
  • oracle数据库满了,数据库hang住

    oracle数据库满了,数据库hang住

    2021年8月28日
    47
  • 卸载vs2013_如何卸载vs2015

    卸载vs2013_如何卸载vs2015最近編譯代碼時由於出現頭文件不匹配,需要升級VS2005,升級比較麻煩,乾脆直接過渡到VS2008得了.先把.NETFramework從1.0一直刪除到3.0,再刪除一些相關依賴包時,安裝程式出錯.找了一下資料,正確的安裝過程如下:VisualStudio2005进入控制面板,运行添加或删除程序卸载"MSDNLibraryforVisualStudio2005Beta"卸载"…

    2022年9月23日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号