Skip to content

Latest commit

 

History

History
84 lines (73 loc) · 2.69 KB

Jedis.md

File metadata and controls

84 lines (73 loc) · 2.69 KB

使用Java操作Redis!

什么是Jedis?Redis官方推荐的Java连接开发工具,使用Java操作Redis中间件。

1、Java新建maven项目

2、导入对应的依赖

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>

<!--    导入Jedis和fastjson-->
    <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>3.2.0</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/com.alibaba.fastjson2/fastjson2 -->
    <dependency>
      <groupId>com.alibaba.fastjson2</groupId>
      <artifactId>fastjson2</artifactId>
      <version>2.0.23</version>
    </dependency>

</dependencies>

3、编码测试

public class TestPing {

    public static void main(String[] args) {
        // 这里测试Redis连接,并发送Ping命令
        Jedis jedis = new Jedis("127.0.0.1", 6379);

        System.out.println(jedis.ping());
    }

}

输出PONG就表示连接成功!
image.png

常用API

String
List
Set
Hash
Zset
这里就不写测试了,之前在xshell里面都写过,一样的命令,只需要调用api即可。
对事务的操作:

public class TestTransaction {

    public static void main(String[] args) {
        Jedis jedis = new Jedis("127.0.0.1", 6379);
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("hello", "world");
        jsonObject.put("name", "zch");
        String user1 = jsonObject.toJSONString();
        String user2 = jsonObject.toJSONString();

        // 开启事务
        jedis.select(2);
        Transaction multi = jedis.multi();
        try {
            multi.set("user1", user1);
            multi.set("user2", user2);
            multi.exec();
        } catch (Exception e) {
            multi.discard();
            e.printStackTrace();
        } finally {
            System.out.println(jedis.get("user1"));
            System.out.println(jedis.get("user2"));
            jedis.close();
        }

    }

}

详细代码在同仓库的code下。