菜鸟教程官网:runoob.com
Redis学习总结:
Redis的下载安装:
1.下载地址:下载地址:https://github.com/MSOpenTech/redis/releases。
2.运行:运行解压后的redis-server.exe文件;
运行结果:
3.测试连接:redis-cli.exe; 输入ping 若返回pang命令,则表示连接成功(简称ping pang命令)
可以在做出如下的练习:
Redis的参数:
1.redis的数据库总共有16个。
2.Redis数据库的切换
select 1 :表示切换到下一个数据库
select 0 :表示切换到第二个数据库
3.验证是否有16个数据库,只需要验证最后一个有没有即可。
Redis的命令:
1.Redis字符串(String)
set key value:简单的设置值; 例:set sex boy :表示设置姓别为boy;
get key :简单的获取值; 例:获取上述的值:get sex ;表示获取sex的值;
incr key :自增命令:表示将key中所存储的值增一;例 set i 1;表示设置i的值为1 incr i :表示将i的值增一;
strlen key :表示获取key所存储的字符串的长度 例:strlen i :表示获取I的长度;
append key value; :表示在存在的值中追加一个字符串。 例append sex "and gil" 表示在sex中追加and gil (注意此处要用双引号,若是有空格的话)
del 键 :表示删除一个字符串 例:del sex :表示删除sex字符串
.....。
2.Redis哈希(hash):是一个键 值映射表,hash特别适合存储对象
hmset 对象名 属性键 属性值 ;表示设置一个对象,及该对象的值;
hgetall 对象名 :表示查看一个对象的所有属性;
hdel 对象 属性 : 表示删除一个对象的属性。
hget 对象 属性 :表示获取对象的一个属性值。
hlen 对象 :表示获取对象的属性个数。
例: hmset user:1 userId "1" username "zs" sex "男";表示设置对象user:1对象,该对象的属性为 :userId "1" username "zs" sex "男";
查看该对象的命令:hgetall user:1 ;表示查询user:1对象的所有属性;
hget user:1 username :表示获取对象的username属性的值
hdel user:1 sex :表示删除对象的sex属性。
3.Redis列表(list有序集合)
rpush 集合名 "元素一" "元素二" :表示设置一个集合,里面添加两个元素。
lpush 集合名 “元素” :表示从集合的左边插入元素。
rpush 集合名 “元素” :表示从集合的右边插入元素。
lindex 集合名 0 4 :表示获取集合的第0个到第四个元素
lindex 集合名 3 :表示获取集合的第3个元素
lpop 集合名 :表示从左边移除列表的第一个元素
rpop 集合名 :表示从右边移除列表的第一个元素
ltrim 集合名 0 5 :表示只保留集合里的从2开始到3的元素 其他的删除
4.Redis集合(set)
Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
sadd 集合名 元素 元一 元二 :表示设置一个集合,里面添加三个元素,但是如有重复,则不会添加进去。
smembers 集合名 :表示查询集合的所有元素
sinter 集合名一 集合名二 :表示获取两个集合内相同的元素(交集)
5.Redis 发布订阅
Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。
subscribe 频道 :表示订阅频道
unsubscribe 频道 :表示退出频道
publish 频道 消息 :表示发送消息给指定的频道
6.Redis 事务
6.1Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
6.2一个事务从开始到执行会经历以下三个阶段:
开始事务。
命令入队。
执行事务。
6.3 multi :表示开启一个事物
discard :表示取消事物,放弃执行事物块内的所有命令。
exec :表示执行所有事物内命令。
7.Redis 连接
Redis 连接命令主要是用于连接 redis 服务。
运行redis-server.exe文件。
打开dos服务窗口 -->双击redis-cli.exe进入dos链接---->输入-h localhost(表示链接自己)
--->为自己的Redis设置密码:config set requirepass 123456(表示将自己的Redis的密码设置为123456)。
再次打开redis-cli.exe会无法直接执行操作 需要登录授权才行。
auth 123456 :表示验证密码是否正确。此处的密码为123456.
config set requirepass 123456; :表示为redis设置密码。
config set requirepass "" ; :表示收回密码权限。
echo "字符串"; :表示打印字符串。
quit; :表示退出客户端。
8.Redis高级教程;
8.1 Redis数据备份与恢复
在服务窗口输入save命令,即为创建当前数据库的备份操作。
save :表示备份当前数据库。
该命令将在 redis 安装目录中创建dump.rdb文件。
如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。
8.2Redis 性能测试
只需要在安装的目录运行redis-benchmark.exe 就能测试redis的性能。
8.3Java 使用 Redis
新建maven项目。
导入jar包;下载网站:http://maven.aliyun.com
在pom.xml中配置如下:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.1</version>
</dependency>
即可自动下载jar包
创建测试类Test
public class Test{
public static void main(String [] args){
Jedis jedis =new Jedis("localhost");
jedis.set("username","aaa");
//表示往redis中插入数据并设置字符集
jedis.set("username".getBytes("utf-8"),"张三".getBytes("utf-8"));
}
}
普通java项目,如何添加maven支持。
鼠标右键点击--->选择MyEclipse Maven---->Enable Dependency Management
--->输入Group id --->点击Finsh完成即可。