Redis学习一

Redis学习一

一、Redis数据类型
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
1,字符串类型
在这里插入图片描述
2.哈希类型
在这里插入图片描述
3.列表类型
在这里插入图片描述
4.集合类型(string,添加第二次zha会被忽略)
在这里插入图片描述
5.有序集合类型(string,根据字母排序)
在这里插入图片描述
二、Redis命令
1.启动redis:
在这里插入图片描述
2. DUMP 命令用于序列化给定 key ,并返回被序列化的值。
在这里插入图片描述
3.修改key名:
3.1Rename 命令用于修改 key 的名称 。
(EXISTS 命令用于检查给定 key 是否存在)
1)key 存在且 newkey 不存在;
2)当 key 不存在时,返回错误;
3)newkey 已存在时, RENAME 会覆盖旧 newkey(值为前一个oldkey的值)。
在这里插入图片描述
3.2 Renamenx 命令用于在新的 key 不存在时修改 key 的名称 。
1)newkey 不存在,改名成功;
2)newkey存在时,失败。
在这里插入图片描述
4.增、删、查:

在这里插入图片描述
4.设计时间:
4.1 Expire 命令用于设置 key 的过期时间,key 过期后将不再可用。单位以秒计。
在这里插入图片描述
4.2 Expireat 命令用于以 UNIX 时间戳(unix timestamp)格式设置 key 的过期时间。key 过期后将不再可用。
在这里插入图片描述
4.3 PEXPIRE 命令和 EXPIRE 命令的作用类似,但是它以毫秒为单位设置 key 的生存时间,而不像 EXPIRE 命令那样,以秒为单位
PEXPIREAT 命令用于设置 key 的过期时间,以毫秒计。key 过期后将不再可用。
1) PTTL key :以毫秒为单位返回 key 的剩余的过期时间。
2) TTL key:以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。
在这里插入图片描述
4.4 PERSIST 命令用于移除给定 key 的过期时间,使得 key 永不过期。
在这里插入图片描述
5. Keys 命令用于查找所有符合给定模式 pattern 的 key 。
在这里插入图片描述
6. MOVE 命令用于将当前数据库的 key 移动到给定的数据库 db 当中。
1)key 存在于当前数据库,可移到另一数据库;
2)key 不存在于当前数据库,不能移到另一数据库;
3)当源数据库和目标数据库有相同的 key 时,不能移到另一数据库。
在这里插入图片描述
7. RANDOMKEY 命令从当前数据库中随机返回一个 key 。
1)mset: 设置多个 key;
2)key *:查看数据库内所有key;
3)flushdb:删除当前数据库所有 key。
在这里插入图片描述
三、JAVA使用redis
1.下好jar包,并导入:
地址是:https://mvnrepository.com/artifact/redis.clients/jedis
在这里插入图片描述
2.连接windows下的redis

import redis.clients.jedis.Jedis;
public class Xue {
	public static void main(String[] args) {
		// 连接本地的 Redis 服务
		Jedis jedis = new Jedis("192.168.43.50");
//		jedis.auth("no");
//	      jedis.select(1);
		System.out.println("Connection to server sucessfully");
		// 查看服务是否运行
		System.out.println("Server is running: " + jedis.ping());
	}
}

2.远程连接Ubuntu下的redis:
1)报错修改:
在这里插入图片描述
2)需要以下命令启动,注意文件位置,不然不能保存刚刚修改的:
在这里插入图片描述
3)连接成功:

 import redis.clients.jedis.Jedis;  
public class Xue {
	public static void main(String[] args) {
		// 连接本地的 Redis 服务
		Jedis jedis = new Jedis("192.168.192.130");
		jedis.auth("no");
//	      jedis.select(1);
		System.out.println("Connection to server sucessfully");
		// 查看服务是否运行
		System.out.println("Server is running: " + jedis.ping());
	}
}

在这里插入图片描述
注:redis.conf参数,黄色需要记住:
在这里插入图片描述
3.List(列表)

import java.util.List;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisShardInfo;
public class Xue1 {
	public static void main(String[] args) {
		// 连接本地的 Redis 服务
		JedisShardInfo shardInfo = new JedisShardInfo("redis://192.168.192.130:6379");//这里是连接的本地地址和端口
        shardInfo.setPassword("no");//这里是密码
        Jedis jedis = new Jedis(shardInfo);
        System.out.println("虚拟机 is running: " + jedis.ping());
//	      jedis.select(1);
        jedis.lpush("site-list", "Runoob");
        jedis.lpush("site-list", "Google");
        jedis.lpush("site-list", "Taobao");
        // 获取存储的数据并输出
        List<String> list = jedis.lrange("site-list", 0 ,2);
        for(int i=0; i<list.size(); i++) {
            System.out.println("列表项为: "+list.get(i));
        }
     }
 }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值