redis常用api操作有哪些
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍了redis常用api操作有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。//设置键值对//set key val
千家信息网最后更新 2025年01月20日redis常用api操作有哪些
这篇文章主要介绍了redis常用api操作有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
//设置键值对//set key value [EX seconds] [PX milliseconds] [NX|XX]//获取值//get key//删除键//del key//清空数据库//flushdb//获取list值//lrange key start stop//map类型//hget key field//hgetall key//sortedset类型package hgs.redislearn;import java.io.IOException;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Set;import org.codehaus.jackson.JsonGenerationException;import org.codehaus.jackson.map.JsonMappingException;import org.codehaus.jackson.map.ObjectMapper;import org.junit.After;import org.junit.Before;import org.junit.Test;import redis.clients.jedis.BinaryClient.LIST_POSITION;import redis.clients.jedis.Jedis;/** * *Description:Redis
* @author guangshihao * @date 2018年9月28日 * */public class RedisMainTest { Jedis jedis = null; @Before public void getConnect() { jedis = new Jedis("192.168.6.129", 6379); } @Test public void sysoutConnect() { System.out.println(jedis.ping()); } @After public void finaly() { jedis.close(); } //测试放入String类型的键值对,并进行获取删除修改等操作 @Test public void TestStringKeys() { jedis.set("hgs.name", "haoguangshi."); String name = jedis.get("hgs.name"); System.out.println(name); long affect = jedis.del("hgs.name"); System.out.println(affect); } @Test public void TestListKeys() { //从左边插入 jedis.lpush("test_list", "1","2","100"); //从右边插入 jedis.rpush("test_list", "100","2","1","this"); //获取list Listlis = jedis.lrange("test_list", 0, -1); System.out.println(lis); //jedis.lpop lpush rpop rpush //在this出现的第一个位置的前面插入is jedis.linsert("test_list", LIST_POSITION.BEFORE, "this", "is"); } //map类型操作 @Test public void TestMapKeys() throws JsonGenerationException, JsonMappingException, IOException {/* Person p = new Person (); p.setName("hgs"); p.setAge(26); p.setWeight(65); Person p1 = new Person (); p1.setName("wd"); p1.setAge(23); p1.setWeight(60); ObjectMapper mapper = new ObjectMapper(); String sp = mapper.writer().writeValueAsString(p); String sp1 = mapper.writer().writeValueAsString(p1); Map ps = new HashMap (); ps.put("hgs", sp); ps.put("wd", sp1);*/ jedis.hset("pseron:hgs", "name", "hgs"); jedis.hset("pseron:hgs", "age", "24"); jedis.hset("pseron:hgs", "weigth", "65kg"); jedis.hset("pseron:wd", "name", "wd"); jedis.hset("pseron:wd", "age", "24"); jedis.hset("pseron:wd", "weight", "60kg"); } @Test public void loopMapKeys() { //遍历一个map Map wd = jedis.hgetAll("pseron:wd"); for(String type : wd.keySet()) { System.out.println(type+" : " +wd.get(type)); } //原子操作自增2 jedis.hincrBy("pseron:hgs\"", "age", 2L); } @Test public void delMapKeys() { //删除属性 jedis.hdel("pseron:wd", "weight"); //打印集合的长度 System.out.println(jedis.hlen("pseron:hgs")); } //set类型数据结构,添加数据 @Test public void setKeysTest() { String[] tmp = new String[] { "tianmao","dingding","alimama","zhifubao","feizhu" }; jedis.sadd("apps", tmp); String[] tmp1 = new String[] { "tianmao","dingdi","alima","zhifubao","feizhu" }; jedis.sadd("apps", tmp); jedis.sadd("apps1", tmp1); } //遍历 @Test public void scanSetKeys() { //判断某个记录是否存在 System.out.println(jedis.sismember("apps", "tianmao")); System.out.println(jedis.scard("apps")); //计算交集 Set sets = jedis.sinter("apps","apps1"); for(String s : sets) { System.out.println(s); } //并集 Set sets1 = jedis.sunion("apps","apps1"); for(String s : sets1) { System.out.println(s); } System.out.println(); //差集 Set sets2 = jedis.sdiff("apps","apps1"); for(String s : sets2) { System.out.println(s); } //遍历 Set sets3 = jedis.smembers("apps"); for(String s : sets3) { System.out.println(s); } } //SortedSet数据类型 //存数据 @Test public void sortedSetAddTest() { Map scoremem = new HashMap (); scoremem.put("wd", (double) 88); scoremem.put("cm", (double) 87); scoremem.put("zz", (double) 90); scoremem.put("wzf", (double) 70); scoremem.put("xzh", (double) 66); scoremem.put("hgs", (double) 55); scoremem.put("hjh", (double) 88); scoremem.put("shk", (double) 100); jedis.zadd("roommeets_score", scoremem); } //sortedSet 遍历 @Test public void scanSortedSet() { //正序遍历 Set members = jedis.zrange("roommeets_score", 0, -1); for(String mem : members) { System.out.println("name:"+mem +","+" score:" +jedis.zscore("roommeets_score", mem)+","+" rank:"+(jedis.zrank("roommeets_score", mem)+1)); } System.out.println(); //正序遍历 Set members1 = jedis.zrevrange("roommeets_score", 0, -1); for(String mem : members1) { System.out.println("name:"+mem +","+" score:" +jedis.zscore("roommeets_score", mem)+","+" rank:"+(jedis.zrevrank("roommeets_score", mem)+1L)); } }}class Person{ String name ; int age; double weight; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public double getWeight() { return weight; } public void setWeight(double weight) { this.weight = weight; } @Override public String toString() { return "Person [name=" + name + ", age=" + age + ", weight=" + weight + "]"; } }
感谢你能够认真阅读完这篇文章,希望小编分享的"redis常用api操作有哪些"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
类型
数据
篇文章
常用
交集
价值
位置
兴趣
原子
右边
同时
属性
差集
数据库
数据结构
更多
朋友
知识
结构
编带
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
浪潮服务器带外管理密码
贵州正规软件开发厂家现货
苏宁外包软件开发
上海定制软件开发流程
北京gpu服务器云服务器
用JDBC连接达梦数据库
服务器的安全与维护
怎么下载oracle数据库
两台服务器光纤直连
数据库生成表怎么保存
四川交友软件开发哪家专业
软件开发最后会有什么工作
服务器端口开放不安全
航空结算软件开发岗位咋样
软件开发十年后
少年网络安全培训
web服务器一般注意哪些方面
济南软件开发工资一般多少知乎
pg数据库怎么编辑视图
数据库 查找第一个字
金华女子监狱网络安全管理
深圳商城软件开发联系方式
asp更新数据库自动增加逗号
大兴区定制软件开发配置
便利蜂软件开发怎么发工资
适用于学生党软件开发的电脑
联想服务器任务栏不显示图标
云上译码服务器怎么连接
服务器 128g内存
第一台服务器