如果我们使用Java操作Redis, 需要确保已经安装了 redis 服务及 Java redis 驱动。
Maven项目可以直接在pom.xml中加入jedis包驱动:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
Jedis中操作String,List,Set,Hash,以及集合排序
package com.srd.tset;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class Tset {
/**
* Redis操作字符串
*/
@Test
public void tset1() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
jedis.select(1);
//添加数据
jedis.set("userName", "张三");//key为userName放入value值为张三
System.out.println(jedis.get("userName"));//读取key为userName的值
//关闭redis
jedis.close();
}
@Test
public void tset2() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
jedis.select(1);
//添加数据
jedis.setex("code", 15, "773357");//key为code时间为15秒value为773347
System.out.println(jedis.get("code")); //读取key为code的值
//关闭redis
jedis.close();
}
/**
* jedis操作List
*/
@Test
public void tset3() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
//添加数据
jedis.lpush("mylist", "a","b","c");
jedis.rpush("mylist", "d","e","f");
List<String> jlist= jedis.lrange("mylist", 0, -1);
//遍历输出
for (String j : jlist) {
System.out.println(j);
}
//关闭redis
jedis.close();
}
/**
* jedis操作Set
*/
@Test
public void tset4() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
jedis.sadd("myset", "张三","lisi","wangwu");
//遍历输出
Set<String> set= jedis.smembers("myset");
for (String string : set) {
System.out.println(string);
}
//关闭redis
jedis.close();
}
/**
* jedis操作Hash
*/
@Test
public void tset5() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
jedis.hset("myhash", "userName", "李四");
jedis.hset("myhash", "password", "123456");
//遍历输出
Map<String, String> map= jedis.hgetAll("myhash");
Set<String> keys= map.keySet();
for (String string : keys) {
System.out.println(string+"\t"+map.get(string));
}
//关闭redis
jedis.close();
}
/**
* jedis操作sortedset(有序集合)
*/
@Test
public void tset6() {
// TODO Auto-generated constructor stub
//连接redis服务器(在这里是连接本地的)
Jedis jedis= new Jedis("127.0.0.1",6379);
jedis.zadd("mysort",99,"张三");
jedis.zadd("mysort",50,"李四");
jedis.zadd("mysort",70,"王五");
//遍历输出
Set<String> set= jedis.zrange("mysort", 0, -1);
for (String string : set) {
System.out.println(string);
}
//关闭redis
jedis.close();
}
}
jedis连接池使用
//jedis连接池使用
@Test
public void test7(){
//创建一个配置对象
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(50);
config.setMinIdle(10);
JedisPool localhost = new JedisPool(config, "127.0.0.1", 6379);
//从连接池拿到一个jedis连接
Jedis jedis = localhost.getResource();
jedis.set("xxoo","123");
System.out.println(jedis.get("xxoo"));
//关闭redis
jedis.close();
}