redis中的数据结构基本的操作

原创 2015年11月21日 11:39:33

复习一下redis中的各个数据结构的基本操作

当然后首先要引入redis的包

package com.jedis;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;


public class JedisUtil {
private JedisPool jedisPool;
private Jedis jedis;

public JedisUtil() {
jedisPool = new JedisPool(new JedisPoolConfig(), "127.0.0.1");
jedis = jedisPool.getResource();
}

public Jedis getJedis() {
return this.jedis;
}


public static void main(String[] args) {
// manipulate String crud
JedisUtil jedisUtil = new JedisUtil();
Jedis jedis = jedisUtil.getJedis();
jedis.set("hello", "world");
System.out.println(jedis.get("hello"));
jedis.append("hello", " hello world!");
System.out.println(jedis.get("hello"));
jedis.set("hello", "hello");
System.out.println(jedis.get("hello"));
jedis.del("hello");
System.out.println(jedis.get("hello"));


// manpulate map
Map<String, String> map = new HashMap<String, String>();
map.put("a", "1");
map.put("b", "2");
map.put("c", "3");
jedis.hmset("user", map);
System.out.println(jedis.hmget("user", "a", "b", "c"));
// the result is generic type list
List<String> list = jedis.hmget("user", "a", "b", "c");
System.out.println(list.size());
// delet a key-value
jedis.hdel("user", "a");
System.out.println(jedis.hmget("user", "a"));// null
System.out.println(jedis.hlen("user"));// 2
System.out.println(jedis.exists("user"));// true
System.out.println(jedis.hkeys("user"));
Set<String> keys = jedis.hkeys("user");
for (String string : keys) {
System.out.println(string);
}
System.out.println(jedis.hvals("user"));
List<String> vals = jedis.hvals("user");
for (String string : vals) {
System.out.println(string);
}


// manipulate list
jedis.del("fruits");
System.out.println(jedis.lrange("fruits", 0, -1));
jedis.lpush("fruits", "apple");
jedis.lpush("fruits", "banana");
jedis.lpush("fruits", "orange");
System.out.println(jedis.lrange("fruits", 0, -1));
// manipulate set
jedis.sadd("sname", "jack", "tom", "rose");
System.out.println(jedis.smembers("sname"));
Set<String> smembers = jedis.smembers("sname");// return a set
// remove a value
// jedis.srem("sname", "jack");
System.out.println(jedis.smembers("sname"));
// value is a member of set
System.out.println(jedis.sismember("sname", "jack"));// false
// return a random element from a Set
System.out.println(jedis.srandmember("sname"));
// return the set cardinality(number of the elements)
System.out.println(jedis.scard("sname"));


// others
System.out.println(jedis.keys("*"));
System.out.println(jedis.keys("*name"));
// System.out.println(jedis.del("sname"));
System.out.println(jedis.del("ssname"));
/*
* The TTL command returns the remaining time to live in seconds of a
* key that has an EXPIRE set. This introspection capability allows a
* Redis client to check how many seconds a given key will continue to
* be part of the dataset.
* Integer reply, returns the remaining time to
* live in seconds of a key that has an EXPIRE. If the Key does not
* exists or does not have an associated expire, -1 is returned
*/
System.out.println(jedis.ttl("sname"));
jedis.setex("timekey", 8, "min");//set the expirtation of the key
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(jedis.ttl("timekey"));//3
jedis.setex("timekey", 1, "min");
System.out.println(jedis.ttl("timekey"));
System.out.println(jedis.exists("time"));
System.out.println(jedis.rename("timekey", "time"));
System.out.println(jedis.get("timekey"));
System.out.println(jedis.get("time"));
//jedis sort
jedis.del("arr");
jedis.rpush("arr", "3");
jedis.lpush("arr", "2");
jedis.lpush("arr", "4");
jedis.lpush("arr", "1");
System.out.println(jedis.lrange("arr", 0, -1));
System.out.println(jedis.sort("arr"));
System.out.println(jedis.lrange("arr", 0, -1));
}
}

redis常用数据结构解析

Redis是一个开源的Key-Value存储引擎,它支持string、hash、list、set和sorted set等多种值类型。由于其卓越的性能表现、丰富的数据类型及稳定性,广泛用于各种需要k/v...
  • yueqian_zhu
  • yueqian_zhu
  • 2016年01月17日 16:48
  • 2205

Redis(2)- 基本数据结构和操作

Redis的一个特点就是处理基本字符串,还支持多种数据结构,包括Hash,List,Set,SortedSet。本章主要介绍Redis的数据结构和基本操作,并给出一些典型的使用场景。感谢《Redis ...
  • zhuyiquan
  • zhuyiquan
  • 2016年07月01日 17:15
  • 539

Redis系列----(二)redis中的数据结构类型

一.前言 redis并不是简单的key-value数据容器,不能将其理解为静态存储数据,它是动态交互的数据结构服务器,可以被用作缓存,高性能k-v数据库等。 它支持很多种类型的数据结构,不仅支持str...
  • u013035972
  • u013035972
  • 2016年09月11日 21:54
  • 7855

redis的五种数据结构

reids官方命令集查询: http://redis.io/commands redis整合各种语言案例查询: https://github.com/josiahcarlson/redis-in...
  • fan510988896
  • fan510988896
  • 2017年05月12日 15:17
  • 664

java,Redis实战之常见数据结构操作

redis基本数据操作 键操作 xxxx 字符串操作 xxxx 整数和浮点数 xxxx 列表 xxxxx 集合(Set) xxxx 散列 xxx 有序集合 xxxx 排序sort...
  • lsblsb
  • lsblsb
  • 2016年12月20日 23:05
  • 826

Redis数据结构命令之String

set  key  value  [ex/px int]   [nx/xx]   ex:秒、px 毫秒,当ex/px 同时设置 px 将生效,  ex不存在将设置成功, px存在将设置成功(修改) ...
  • manmanxiaohui
  • manmanxiaohui
  • 2016年06月01日 22:38
  • 309

Redis几种数据结构的应用场景

String [html] view plaincopy 1、String   常用命令:   除了get、set、incr、decr mget等操...
  • nyist327
  • nyist327
  • 2015年08月28日 14:14
  • 2354

redis中的5种数据结构

这里的数据结构指的是key-value中value的数据结构,分别为string、hash、list、set、sorted set。每种数据结构都有相关的命令,比如set命令表示使用string来存储...
  • imred
  • imred
  • 2016年04月22日 22:24
  • 4663

Redis之运维细节

一 Linux配置优化 1.1 内存分配控制 vm.overcommit_memory Redis在启动的时候,可能会出现这样的日志: 什么是overcommit?Linux对大部...
  • zhanglh046
  • zhanglh046
  • 2017年11月25日 10:51
  • 319

数据结构 单链表操作(源代码)

//ChainList #include #include #include #include //包含strcmp()函数,不包含也可以,但会警告strcmp未定义返回值 #pragma wa...
  • u010286232
  • u010286232
  • 2014年04月21日 00:34
  • 1014
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:redis中的数据结构基本的操作
举报原因:
原因补充:

(最多只允许输入30个字)