所用redis版本:2.4.0 windows 64位版
所用jar文件:jedis-2.6.2.jar
RedisTest.java
package redis;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.junit.Test;
import redis.clients.jedis.Jedis;
public class RedisTest {
private static Jedis jedis;
static{
//访问本地redis
jedis = new Jedis("127.0.0.1",6379);
//访问远程redis主机:配置防火墙,开放6379端口
//jedis = new Jedis("192.168.2.129",6379);
}
//获取hash对象user1
@Test
public void hmget(){
List<String> list = jedis.hmget("user1", "name","age","sex");
for (String str : list) {
System.out.println(str);
}
}
//设置hash对象user1,字段有就修改字段值,字段无就添加字段
@Test
public void hmset(){
Map<String, String> map=new HashMap<String, String>();
map.put("address", "shenyang");
map.put("age", "22");
map.put("name", "zhangsan");
jedis.hmset("user1", map);
//第一种遍历
//List<String> list = jedis.hmget("user1", "name","age","sex","phone","address");
//for (String str : list) {
// System.out.println(str);
//}
//第二种遍历
List<String> list2 = jedis.hvals("user1");
for (String str : list2) {
System.out.println(str);
}
}
//redis如何添加集合中的数据以及遍历集合
@Test
public void listset(){
jedis.flushAll(); //刷新缓存,防止之前的数据影响
jedis.lpush("科目", "语文");
jedis.lpush("科目", "数学");
jedis.lpush("科目", "英语");
jedis.lpush("科目", "历史");
jedis.lpush("科目", "计算机");
jedis.lpush("科目", "计算机");
//第一种遍历
//while(jedis.exists("科目")){
// System.out.println(jedis.lpop("科目"));
// }
//第二种遍历
List<String> list = jedis.lrange("科目",0,jedis.llen("科目"));
for (String str : list) {
System.out.println(str);
}
}
//redis如何添加set集合中的数据以及遍历集合
@Test
public void setset(){
jedis.flushAll(); //刷新缓存,防止之前的数据影响
jedis.sadd("姓氏","赵" );
jedis.sadd("姓氏","钱" );
jedis.sadd("姓氏","孙" );
jedis.sadd("姓氏","孙" );
jedis.sadd("姓氏","李" );
jedis.sadd("姓氏","周" );
Set<String> set = jedis.smembers("姓氏");
for(String name : set) {
System.out.println(name);
}
}
//redis如何添加有序set集合中的数据以及遍历集合
@Test
public void zsetset(){
jedis.flushAll(); //刷新缓存,防止之前的数据影响
jedis.zadd("姓氏",1,"赵" );
jedis.zadd("姓氏",2,"钱" );
jedis.zadd("姓氏",3,"孙" );
jedis.zadd("姓氏",3,"孙" );
jedis.zadd("姓氏",5,"李" );
jedis.zadd("姓氏",6,"周" );
Set<String> set = jedis.zrange("姓氏", 0, 10);
for(String name : set) {
System.out.println(name);
}
}
}