1.新建maven项目redis-client;
2.导入java maven jedis依赖包;
https://mvnrepository.com/找到jedis版本,然后导入;
3.更换JDK:
简单的代码操作:
/**
* redis java api
* @author Administrator
*
*/
public class RedisDemo {
//定义JedisPool
private static JedisPool jedisPool =null;
public static void main(String[] args) {
//初始化连接
init();
//操作字符串
//testString("test_key", "123");
//List相关操作
//testList();
//set集合相关操作
testSet();
}
/**
* 初始化redis连接
*/
private static void init() {
//Jedis池的配置,定义JedisPoolConfig配置jedis
JedisPoolConfig config = new JedisPoolConfig();
//设置最大空闲连接数
config.setMaxIdle(8);
//设置最大可连接数
config.setMaxTotal(100);
//设置获取连接最大等待时间,如果超时抛出异常
config.setMaxWaitMillis(1000); //单位毫秒,1000代表一秒
//设置获取连接是否需要校验,true代表需要,false不需要
config.setTestOnBorrow(false);
//
/**
* 构造jedispool对象,需要传入一下参数
* config JedisPoolConfig
* host 要连接的地址:47.110.155.64
* port 端口:port
* timeout 过期时间:5000毫秒即5秒钟
* password redis服务器端密码:没设置此处缺省
*/
jedisPool = new JedisPool(config,"47.110.155.64",10190,5000);
}
//操作字符串
public static void testString(String key,String value) {
//获取连接
Jedis jedis = jedisPool.getResource();
//设置key-value
jedis.set(key, value);
//获取value
jedis.get(key);
System.out.println(jedis.get(key));
//自增方法
jedis.incr(key);
System.out.println(jedis.get(key));
//自减
jedis.decr(key);
System.out.println(jedis.get(key));
//获取对外类型
jedis.type(key);
System.out.println(jedis.get(key));
//设置过期时间为3秒
jedis.expire(key, 3);
//删除
jedis.del(key);
//使用完jedis连接一定要关闭
jedis.close();
}
//操作List
public static List testList() {
//获取连接
Jedis jedis = jedisPool.getResource();
//每次运行前清空
jedis.del("test_list");
//添加list
jedis.lpush("test_list", "a");
jedis.lpush("test_list", "b");
jedis.lpush("test_list", "c");
jedis.lpush("test_list", "d");
jedis.lpush("test_list", "1");
jedis.lpush("test_list", "2");
jedis.lpush("test_list", "3");
jedis.lpush("test_list", "4");
//查询list
List<String> list = jedis.lrange("test_list", 0, -1);
//遍历
list.forEach(i ->{
System.out.println(i);
});
jedis.close();
return null;
}
//操作集合类型
public static void testSet() {
//获取连接
Jedis jedis = jedisPool.getResource();
//定义key
String key = "test_set";
//每次运行前清空
jedis.del("test_list");
//添加元素
jedis.sadd(key, "hello","cc");//可以加入多个元素
//获取元素
Set<String> set = jedis.smembers(key);
System.out.println("all menbers:"+set);
//获取集合长度
jedis.scard(key);
System.out.println(jedis.scard(key));
//查看元素是否在集合内
jedis.sismember(key, "cc");
System.out.println(jedis.sismember(key, "cc"));
//随机删除,并返回元素
jedis.spop(key);
System.out.println(jedis.spop(key));
String test_set1 = "test_set1";
String test_set2 = "test_set1";
jedis.sadd(test_set1, "a","b","c","d");
jedis.sadd(test_set2, "b","c","e");
//集合交集
Set<String> sets = jedis.sinter(test_set1,test_set2);
System.out.println("test_set1和test_set2的交集:"+sets);
//集合差集
sets = jedis.sdiff(test_set1,test_set2);
System.out.println("test_set1和test_set2的交集:"+sets);
//集合并集
sets = jedis.sunion(test_set1,test_set2);
System.out.println("test_set1和test_set2的交集:"+sets);
jedis.close();
}
}