当前位置: 首页> 教育> 就业 > 湘潭网站建设公司_html简单网页代码下载_制作一个网站的费用是多少_惠州seo外包费用

湘潭网站建设公司_html简单网页代码下载_制作一个网站的费用是多少_惠州seo外包费用

时间:2025/7/11 23:22:45来源:https://blog.csdn.net/weixin_43191153/article/details/145724776 浏览次数:0次
湘潭网站建设公司_html简单网页代码下载_制作一个网站的费用是多少_惠州seo外包费用

在这里插入图片描述

Redis 命令启动、配置密码

Redis是绿色软件,所以直接解压就能使用
配置文件为:redis.windows.conf
启动redis 服务:

redis-server.exe redis.windows.conf

启动客户端:

redis-cli.exe

默认没有给Redis配置密码,所以在配置文件中配置密码

将密码设置为123456
# requirepass foobared改成
requirepass 123456

重新启动服务端,登录客户端的时候加上 -a 密码来登录;项目中就不用密码了

redis-server.exe redis.windows.conf -h localhost -p 6379 -a 123456

存放数据类型

在这里插入图片描述

Redis常用命令

String

在这里插入图片描述
SETEX为验证码场景
SETNX集群互斥

哈希

在这里插入图片描述

列表

在这里插入图片描述

集合

在这里插入图片描述

有序集合

在这里插入图片描述

通用命令

在这里插入图片描述

在Spring中使用Redis

导入坐标、配置数据源、配置类

在这里插入图片描述
在这里插入图片描述
redis实际上是创建了16个数据库,互相隔离;这里写索引为0-15
在这里插入图片描述
在这里插入图片描述

操作String类型数据

使用注入的RedisTemplate
在这里插入图片描述
在这里插入图片描述

注意代码中使用的函数不是以之前命令的名称进行命名的

我们之前使用了String的序列化器,那么在redis的客户端中,key是没有乱码的;但是值有乱码;
在这里插入图片描述

Hash操作

在这里插入图片描述

列表(list)类数据:

@Test
public void testList(){//Lpush lrange rpop llenListOperations listOperations = redisTemplate.opsForList();listOperations.leftPushAll("mylist","a","b","c"); //lpush多个valuelistOperations.leftPush("mylist","d"); //lpush单个valueList mylist = listOperations.range("mylist",0,-1); //lrangeSystem.out.println(mylist);listOperations.rightPop("mylist"); //rpopLong size = listOperations.size("mylist"); //llenSystem.out.println(size);
}

集合类数据:

@Test
public void testSet(){//sadd smembers scard sinter sunion sremSetOperations setOperations = redisTemplate.opsForSet();setOperations.add("set1","a","b","c","d"); //saddsetOperations.add("set2","a","b","x","y");Set members = setOperations.members("set1"); //smembersSystem.out.println(members);Long size = setOperations.size("set1"); //scardSystem.out.println(size);Set intersect = setOperations.intersect("set1","set2"); //sinter取交集System.out.println(intersect);Set union = setOperations.union("set1","set2"); //sunion取并集System.out.println(union);setOperations.remove("set1","a","b"); //srem
}

有序集合类数据:

@Test
public void testZset(){//zadd zrange zincrby zremZSetOperations zSetOperations = redisTemplate.opsForZSet();zSetOperations.add("zset1","a",10); //zaddzSetOperations.add("zset2","b",12);zSetOperations.add("zset1","c",9);Set zset1 = zSetOperations.range("zset1",0,-1); //zrangeSystem.out.println(zset1);zSetOperations.incrementScore("zset1","c",10); //zincrbyzSetOperations.remove("zset1","a","b"); //zrem
}

通用命令

@Test
public void testCommon(){//keys exists type delSet keys = redisTemplate.keys("*"); //keysSystem.out.println(keys);Boolean name = redisTemplate.hasKey("name"); //existsBoolean set1 = redisTemplate.hasKey("set1");for(Object key : keys){DataType type = redisTemplate.type(key); //typeSystem.out.println(type.name());}redisTemplate.delete("mylist"); //del
}

SQL数据库具有ADCI的特性

原子性

事务是一个不可分割的操作单位,要么完全成功,要么完全失败。如果事务中的某个操作失败,整个事务会被回滚,数据库将恢复到事务开始之前的状态。

一致性

事务在执行前后,数据库的状态必须保持一致。事务必须将数据库从一个一致的状态转变为另一个一致的状态,遵循所有的完整性约束。
什么是数据库的状态:数据必须遵循预定义的完整性约束(如主键、外键、唯一性、检查约束等)、数据库的状态还需遵循特定的业务规则。例如,某个账户的余额不能为负数,或者某个订单的状态只能在特定条件下改变

隔离性 (Isolation)

同时执行的事务彼此之间不能相互干扰。每个事务的执行不应受到其他事务的影响,确保并发事务的执行结果与顺序执行的结果相同。

持久性 (Durability)

一旦事务被提交,其结果是永久性的,即使系统发生故障,已提交的事务的结果也不会丢失。数据库必须确保保存所有已提交事务的变更。
在这里插入图片描述
在这里插入图片描述
虽然redis支持多线程,但是命令是单线程;

更改redis配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Redis命令

基础命令

在这里插入图片描述
在这里插入图片描述

value为String类型

在这里插入图片描述

value为Hash类型

为什么存在Hash这种类型

既然我们可以存储String类型的数据,也就是将一个对象转为Json对象,然后再转为String;
转为String我们就可以存下来了;
如果使用当我们想要改变对象中某个字段的值,那么我们就得重写整个String。这样开销是大的。

Hash类型的指令

在这里插入图片描述

List

在这里插入图片描述
在这里插入图片描述

Set

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

关键字:湘潭网站建设公司_html简单网页代码下载_制作一个网站的费用是多少_惠州seo外包费用

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: