Redis学习(2)—— 实例与注释说明[转]
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set; import redis.clients.jedis.Jedis;
/**
* @author wangzhijun
* @date 2013-04-01
*/ public class RedisTest { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// 字符串测试 //[key,value]=["wl_str","jedis test ..."]
Jedis jedis = new Jedis("localhost");
jedis.set("wl_str", "jedis test ...");
String x = jedis.get("wl_str");
System.out.println(x);
// 列表 list 主要命令有两个LPUSH,RPUSH。L代表左,R代表右
jedis.rpush("wl_list", "疑是地上霜");
jedis.rpush("wl_list", "举头望明月");
jedis.rpush("wl_list", "低头思故乡");
jedis.lpush("wl_list", "床前明月光");
List<String> values = jedis.lrange("wl_list", 0, -1); //LRANGE用来获取子列表。第一个元素的索引为0。-1,表示列表末尾,-2表示列表倒数第二个
System.out.println(values);
// 集合 Set(无序) SADD命令可以向集合添加一个新元素
jedis.sadd("wl_set", "1");
jedis.sadd("wl_set", "2");
jedis.sadd("wl_set", "3");
jedis.sadd("wl_set", "4");
Set<String> setValues = jedis.smembers("wl_set"); //SMEMEBER命令获取集合里的元素
System.out.println(setValues);
// 有序集合 Sorted Set
jedis.zadd("wl_sortedSet", 1940, "1940-购置房屋");
jedis.zadd("wl_sortedSet", 1953, "1953-购置汽车");
jedis.zadd("wl_sortedSet", 1965, "1965-发明专利");
jedis.zadd("wl_sortedSet", 1916, "1916-上小学");
jedis.zadd("wl_sortedSet", 1969, "1969-获得诺贝尔");
jedis.zadd("wl_sortedSet", 1912, "1912-出生");
Set<String> sortedSetValues = jedis.zrange("wl_sortedSet", 0, -1);//按照年份排序
System.out.println("由年份从老到新排序");
System.out.println(sortedSetValues);
System.out.println("由年份从新到老排序");
sortedSetValues=null;
sortedSetValues=jedis.zrevrange("wl_sortedSet", 0, -1);
System.out.println(sortedSetValues);
//哈希表 Hash 主要用于批量修改和获取
Map<String, String> pairs = new HashMap<String, String>();
pairs.put("name", "克瑞斯");
pairs.put("age", "20");
pairs.put("sex", "男");
jedis.hmset("young", pairs); //设置hash的值
values = jedis.hmget("young", new String[] { "name", "age", "sex" });
System.out.println(values);
setValues = jedis.hkeys("young"); //获取young变量里面的标签 name、age和sex
System.out.println(setValues);
values = jedis.hvals("young"); //获取young变量里面的标签 name、age和sex所对应的值
System.out.println(values);
pairs = jedis.hgetAll("young"); //
System.out.println(pairs);
} }
输出结果如下:
jedis test ...
[床前明月光, 疑是地上霜, 举头望明月, 低头思故乡]
[3, 2, 1, 4]
由年份从老到新排序
[1912-出生, 1916-上小学, 1940-购置房屋, 1953-购置汽车, 1965-发明专利, 1969-获得诺贝尔]
由年份从新到老排序
[1969-获得诺贝尔, 1965-发明专利, 1953-购置汽车, 1940-购置房屋, 1916-上小学, 1912-出生]
[克瑞斯, 20, 男]
[sex, name, age]
[20, 克瑞斯, 男]
{sex=男, name=克瑞斯, age=20}
若要运行本程序,需要下载jar包(jedis-2.1.0.jar),具体位置:https://github.com/xetorthio/jedis/downloads
redis命令使用大全网站:http://redis.readthedocs.org/en/latest/index.html
http://redis.readthedocs.org/en/2.4/
Redis学习(2)—— 实例与注释说明[转]的更多相关文章
- Redis学习手册(实例代码)
在之前的博客中已经非常详细的介绍了Redis的各种操作命令.运行机制和服务器初始化参数配置.本篇博客是该系列博客中的最后一篇,在这里将给出基于Redis客户端组件访问并操作Redis服务器的代码示例. ...
- Redis学习之路(007)- Redis学习手册(实例代码)
在之前的博客中已经非常详细的介绍了Redis的各种操作命令.运行机制和服务器初始化参数配置.本篇博客是该系列博客中的最后一篇,在这里将给出基于Redis客户端组件访问并操作Redis服务器的代码示例. ...
- Redis学习手册(目录)
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
- Redis学习手册——转载
转载出处:http://www.cnblogs.com/stephen-liu74/archive/2012/04/16/2370212.html 为什么自己当初要选择Redis作为数据存储解决方案中 ...
- Redis学习手册
为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三.其一,Redis不仅性能高效,而且完全免费.其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧.最后 ...
- Redis——学习之路四(初识主从配置)
首先我们配置一台master服务器,两台slave服务器.master服务器配置就是默认配置 端口为6379,添加就一个密码CeshiPassword,然后启动master服务器. 两台slave服务 ...
- Redis学习笔记4-Redis配置详解
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...
- 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
- Redis学习笔记之ABC
Redis学习笔记之ABC Redis命令速查 官方帮助文档 中文版本1 中文版本2(反应速度比较慢) 基本操作 字符串操作 set key value get key 哈希 HMSET user:1 ...
- 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
随机推荐
- 批量修改文件名的bash脚本
#!/bin/bash while IFS='' read -r line || [[ -n "$line" ]]; do # echo "sox $line --cha ...
- Solr入门和实践以及我对Solr的8点理解
友情提示Solr的内容还是比较多的,一篇文章只能讲解一部分.全面介绍,没兴趣,没时间,也没能力,回报还不大.本文只写点我认为比较重要的知识点,独特的个人想法.仅供参考哦,更多细节需要自己去琢磨. 概述 ...
- [Java.Web]Tomcat 常用配置
1. web.xml 文件最下方内容 (X:\apache-tomcat-7.0.77\conf\ 目录下) <welcome-file-list> <welcome-file> ...
- supervisor 管理
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启.它是通过fork/exec的方式把这些被管理的进程 ...
- kubernetes 学习 常用命令
1 kubectl get nodes #查看nodes节点情况 2 kubectl describe node node_name_XXXX # 查看nodes详 ...
- oracle 存储过程 建表插值等
建表.插值的procedure create or replace procedure CREATE_EMP is v_createsql ); v_insertsql ); begin v_crea ...
- python开发_python中的range()函数
python中的range()函数的功能hen强大,所以我觉得很有必要和大家分享一下 就好像其API中所描述的: If you do need to iterate over a sequence o ...
- 记录两个python的小问题
使用python也前前后后也一个月的样子,记录两个一直没注意的问题. 1. 元组的使用(拼接字符串) 直接看下面的代码: >>> kel = 'some','strings' > ...
- **Python的函数参数传递 和 global
函数的参数到底是传递的一份复制的值,还是对内存的引用? 我们看下面一段代码: a = [] def fun(x): x.append(1) fun(a) print(a) 想想一下:如果传递的是一份复 ...
- 安装sql server 2000
昨天下午快下班的时候 因为公司需要折腾了下sql server 2000,先不说这么古老的版本,而且安装的也是醉了... 首先sql server 2000是基于32位的系统开发的,那时候据说还没有6 ...