Redis-Jedis操作
来源:互联网 发布:中国税务网络大学 加速 编辑:程序博客网 时间:2024/06/16 09:08
- Redis环境:Redis-x64-3.2.100
修改密码, 打开redis.windows.conf,去掉注释
# 密码requirepass 123456
使用Jedis操作Redis
依赖jar
测试类
package com.zzs.redis;import java.util.HashMap;import java.util.List;import java.util.Map;import org.junit.Before;import org.junit.Test;import redis.clients.jedis.Jedis;public class RedisTest { private Jedis jedis; @Before public void setup(){ //在cmd上启动redis服务 //命令: redis-server.exe redis.windows.conf //链接redis服务器 jedis = new Jedis("127.0.0.1", 6379); //权限认证 jedis.auth("123456"); } //redis存储字符串 //@Test public void testString(){ //添加字符串 jedis.set("name", "keep"); System.out.println(jedis.get("name")); //拼接字符串 jedis.append("name", " is my name"); System.out.println(jedis.get("name")); //删除键 jedis.del("name"); System.out.println(jedis.get("name")); //设置多个键值对 jedis.mset("name", "kkk", "age", "22"); System.out.println(jedis.get("age")); } //redis操作Map //@Test public void testMap(){ //添加数据 Map<String, String> map = new HashMap<>(); map.put("name", "Jack"); map.put("age", "22"); map.put("qq", "123456"); //添加map jedis.hmset("user", map); //取出map List<String> rsmap = jedis.hmget("user", "name", "age", "qq"); System.out.println(rsmap); //删除map中的某个键值 jedis.hdel("user", "age"); System.out.println(jedis.hmget("user", "age")); //返回存放的值个数 System.out.println(jedis.hlen("user")); //是否存在key为user的记录 System.out.println(jedis.exists("user")); //返回map对象中所有的key System.out.println(jedis.hkeys("user")); //返回map对象中所有的value System.out.println(jedis.hvals("user")); } //Redis操作List //@Test public void testList() { //移除所有内容 jedis.del("java framework"); System.out.println(jedis.lrange("java framework", 0, -1)); //存入数据 jedis.lpush("java framework", "spring"); jedis.lpush("java framework", "struts"); jedis.lpush("java framework", "hibernate"); //取出数据 System.out.println(jedis.lrange("java framework", 0, -1)); //清除数据 jedis.del("java framework"); //存入数据 jedis.rpush("java framework", "spring"); jedis.rpush("java framework", "struts"); jedis.rpush("java framework", "hibernate"); //取出数据 System.out.println(jedis.lrange("java framework", 0, -1)); } //jedis操作set //@Test public void testSet(){ jedis.del("user"); //添加 jedis.sadd("user", "zhangsan"); jedis.sadd("user", "lisi"); jedis.sadd("user", "wangwu"); jedis.sadd("user", "Jack"); //获取set System.out.println(jedis.smembers("user")); //移除 jedis.srem("user", "Jack"); //判断是否属于集合 System.out.println(jedis.sismember("user", "Jack")); } //jedis排序 //@Test public void testSort(){ jedis.del("a"); jedis.rpush("a", "1"); jedis.lpush("a", "7"); jedis.lpush("a", "5"); jedis.lpush("a", "9"); System.out.println(jedis.lrange("a", 0, -1)); System.out.println(jedis.sort("a")); System.out.println(jedis.lrange("a", 0, -1)); } //线程池测试 @Test public void testRedisPool(){ RedisUtil.getJedis().set("where", "fsd"); System.out.println(RedisUtil.getJedis().get("where")); }}
3. 线程类
package com.zzs.redis;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;public class RedisUtil { private static String ADDR = "127.0.0.1"; //服务器地址 private static int PORT = 6379; //端口号 private static String AUTH = "123456"; //密码 private static int MAX_ACTIVE = 1024; //可连接实例最大数目,默认为8, -1表示不限制 private static int MAX_IDLE = 200; //pool中最大有多少个状态为idle(空闲)的jedis实例,默认为8 private static int MAX_WAIT = 10000; //等待连接的最大时间(ms),默认为-1, 永不超时。若超时抛出异常 private static int TIMEOUT = 10000; private static boolean TEST_ON_BORROW = true; //在borrow一个jedis实例是,是否体检进行validate操作;如果为true,则得到的jedis实例均是可用 private static JedisPool jedisPool = null; //初始化Redis连接池 static{ try{ JedisPoolConfig config = new JedisPoolConfig(); config.setMaxActive(MAX_ACTIVE); config.setMaxIdle(MAX_IDLE); config.setMaxWait(MAX_WAIT); config.setTestOnBorrow(TEST_ON_BORROW); jedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, AUTH); }catch(Exception e){ e.printStackTrace(); } } //获取Jedis实例 public synchronized static Jedis getJedis(){ try{ if(jedisPool != null){ Jedis resource = jedisPool.getResource(); return resource; }else{ return null; } }catch(Exception e){ e.printStackTrace(); return null; } } //是否Jedis实例 public static void returnResource(final Jedis jedis){ if(jedis != null){ jedisPool.returnResource(jedis); } }}
文章原地址: 这里写链接内容
阅读全文
0 0
- redis 之 jedis操作
- Jedis操作redis
- 使用Jedis操作redis
- Jedis操作redis
- jedis 操作redis集合
- 使用Jedis操作Redis
- 使用Jedis操作redis
- Jedis操作redis
- Jedis操作redis
- Java操作Redis--Jedis
- jedis-JAVA操作Redis
- jedis操作redis
- Jedis操作Redis
- Jedis操作Redis
- jedis操作redis
- 使用Jedis操作Redis
- jedis操作redis
- Jedis客户端操作redis
- 如何在其他线程中修改主UI属性及对象元素特性
- linux ubuntu ftp配置与实验
- vue组件间通信
- Oralce增量同步方案系列1-方案选型
- codeforces851C. Five Dimensional Points(暴力/思维)
- Redis-Jedis操作
- IP地址、子网掩码、网络号、主机号、网络地址、主机地址
- 导入已经存在的java工程(非maven)
- linux下无法识别u盘 因为U盘在使用就拔掉U盘
- 【莫队算法】小z的袜子(入门)
- Largest Point
- POJ-1651(区间DP)
- 三千大数阶乘
- chapter13_3图片融合(带Mask)