Jedis基本操作

Redis简介

Redis 是一个 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis数据类型

Redis支持5种数据类型:string(字符串),hash(哈希),list(列表),set(集合),zset(sorted set:有序集合)。

Jedis基本操作

Jedis是Redis官方推荐的Java连接开发工具。

新建Test类,新建main方法作为入口方法。

import redis.clients.jedis.Jedis;
import redis.clients.jedis.Transaction;

public class Test {
    static Jedis jedis = new Jedis("127.0.0.1");//创建Jedis对象,指定host
    public static void main(String[] args) {
        System.out.println("服务器连接成功!-------->"+jedis.ping());
        //调用数据操作方法
        ...
    }
    //数据操作方法
    ...
}

在这里插入图片描述

string

string 是 Redis 最基本的数据类型。一个 key 对应一个 value,就像是 java 中的 map 一样。

	//string类型操作方法
	public static void setString(){
        System.out.println("存储数据到string类型中去------->");
        jedis.set("username","wangwu");
        String username = jedis.get("username");
    }

在Redis Desktop Manager中查看是否持久化到数据库。
在这里插入图片描述

hash

Redis hash 是一个 string 类型的 key 和 value 的映射表,hash 特别适合用于存储对象。
string 是 一个 key - value 键值对,而 hash 是多个 key - value 键值对。

    public static void redisHash(){
        jedis.hset("list1","name","lisi");
        jedis.hset("list1","country","中国");
        String hget = jedis.hget("list1", "country");//获取单个值
        Map<String, String> list1 = jedis.hgetAll("list1");//获取所有键值对
    }

在这里插入图片描述

list

Redis 列表是简单的字符串列表,按照插入顺序排序。我们可以网列表的左边或者右边添加元素,元素可重复。

	public static void redisList() {
        jedis.lpush("student", "stu1");
        jedis.lpush("student", "stu2");
        jedis.lpush("student", "stu3");
        jedis.lpush("student", "stu4");
        jedis.lpush("student", "stu5");
        List<String> student = jedis.lrange("student", 0,
                jedis.llen("student"));
        System.out.println(student);
        //弹出元素
        System.out.println("弹出一个元素:"+jedis.lpop("student"));
        System.out.println("弹出一个元素:"+jedis.lpop("student"));
        System.out.println("弹出一个元素:"+jedis.lpop("student"));
        System.out.println(jedis.llen("student"));
    }

运行截图:
在这里插入图片描述
在这里插入图片描述

set

Redis 的 set 是字符串类型的无序集合,集合内的元素不能重复。
集合是通过哈希表实现的,因此添加、删除、查找的复杂度都是 O(1)。

	public static void RedisSet(){
        //数据存储
        jedis.sadd("t02","李四");
        jedis.sadd("t02","王五");

        Set<String> t01 = jedis.smembers("t02");
        Iterator<String> it = t01.iterator();
        while(it.hasNext()){
            System.out.println(it.next());
        }
    }

在这里插入图片描述

zset

Redis zset 和 set 一样都是字符串类型元素的集合,并且集合内的元素不能重复。
不同的是,zset 每个元素都会关联一个 double 类型的分数。redis 通过分数来为集合中的成员进行从小到大的排序。
zset 的元素是唯一的,但是分数(score)却可以重复。

    public static void redisZset(){
        jedis.zadd("zname",20,"mem1");
        jedis.zadd("zname",30,"mem2");
        jedis.zadd("zname",10,"mem3");
        Set<String> zrange = jedis.zrange("zname", 0, -1);
    }

在这里插入图片描述

事务操作

//redis的事务操作
    public static void trans(){
        Transaction multi = jedis.multi();//得到一个事务
        multi.set("tname","blob");
        multi.exec();//提交事务不进行回滚
        System.out.println(jedis.get("tname"));
        jedis.quit();
    }

在这里插入图片描述

参考

Redis简介-----菜鸟教程

Redis 超详细总结笔记

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值