redis常用api操作有哪些

60次阅读
没有评论

共计 4621 个字符,预计需要花费 12 分钟才能阅读完成。

这篇文章主要介绍了 redis 常用 api 操作有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让丸趣 TV 小编带着大家一起了解一下。

// 设置键值对
//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;
 * 
 *  p Description:Redis  /p  
 * @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
 List String   lis = 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);

ObjectMapper mapper = new ObjectMapper(); String sp = mapper.writer().writeValueAsString(p); String sp1 = mapper.writer().writeValueAsString(p1); Map String,String  ps = new HashMap String, String 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 String,String  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 String  sets = jedis.sinter( apps , apps1 for(String s : sets) {System.out.println(s); // 并集 Set String  sets1 = jedis.sunion( apps , apps1 for(String s : sets1) {System.out.println(s); System.out.println(); // 差集 Set String  sets2 = jedis.sdiff( apps , apps1 for(String s : sets2) {System.out.println(s); // 遍历 Set String  sets3 = jedis.smembers( apps for(String s : sets3) {System.out.println(s); //SortedSet 数据类型 // 存数据 @Test public void sortedSetAddTest() { Map String,Double  scoremem = new HashMap String, Double 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 String  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 String  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 + ]
}

感谢你能够认真阅读完这篇文章,希望丸趣 TV 小编分享的“redis 常用 api 操作有哪些”这篇文章对大家有帮助,同时也希望大家多多支持丸趣 TV,关注丸趣 TV 行业资讯频道,更多相关知识等着你来学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-15发表,共计4621字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)