zoukankan      html  css  js  c++  java
  • Redis:jedis操作Redis

    什么是jedis?

      是Redis官方推荐的java链接开发工具,使用java操作Redis的中间件!如果要使用java操作Redis,那么一定要对jedis十分熟悉

    1,导入相关依赖

        <!--导入jedis的包-->
        <dependencies>
            <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>3.2.0</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.73</version>
            </dependency>
        </dependencies>

    2,编码测试

    连接Redis数据库

    public class TestPing {
        public static void main(String[] args) {
            //1.new jedis 对象即可
            Jedis jedis = new Jedis("127.0.0.1",6379);
            //2.jedis所有的命令就是官文的操作指令
    
            System.out.println(jedis.ping());
        }
    }

    输出:(连接成功)

    3.常用API

    String

    List

    Set(具有数据的交叉并)

    Hash

    Zset

    三大特殊数据类型:geospatial(地址空间类型) hyperloglog(基数) bitmap(位存储)

    4,用jedis写一个事务demo

    //reids事务demo
    public class TestJedisTransaction {
        public static void main(String[] args) {
            Jedis jedis = new Jedis("127.0.0.1", 6379);
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("hello","World1");
            jsonObject.put("hello2","World2");
            jsonObject.put("hello3","龙神");
            //开启事务
            Transaction multi = jedis.multi();
            String result = jsonObject.toJSONString();
            try{
    
                multi.set("user1",result);
                multi.set("user2",result);
                int i = 1/0;
    
    
                multi.exec();//如果成功,执行事务
            }catch (Exception e){
                //由于redis没有原子性,所以用关闭事务的方式来模拟事务的的原子性
                multi.discard();//如果失败就放弃事务
                e.printStackTrace();
            }finally {
                System.out.println(jedis.get("user1"));
                System.out.println(jedis.get("user2"));
                jedis.close();//关闭连接
            }
        }
    }
  • 相关阅读:
    Windows-Redis-x64-5.0.9【感谢大佬】
    Debezium初试
    一键结束进程
    Vscode自动刷新
    从零到一搭建一个jenkins+github持续构建平台
    git项目迁移
    AWS IoT 消息代理
    解析器:request.body、request.POST、request.data
    Unity程序员的Unreal 简明教程(二,模型与材质)
    Unity程序员的Unreal 简明教程(一、旋转的BOX)
  • 原文地址:https://www.cnblogs.com/CL-King/p/14586753.html
Copyright © 2011-2022 走看看