Redis-Jedis操作
2017-09-05 16:40
141 查看
Redis环境:Redis-x64-3.2.100
修改密码, 打开redis.windows.conf,去掉注释
使用Jedis操作Redis
依赖jar
测试类
文章原地址: 这里写链接内容
修改密码, 打开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); } } }
文章原地址: 这里写链接内容
相关文章推荐
- jedis操作redis
- 征服 Redis + Jedis + Spring (一)—— 配置&常规操作(GET SET DEL)
- jedis与spring整合及简单的使用RedisTemplate操作
- Jedis操作Redis--String类型
- Redis客户端API操作 Jedis的八种调用方式详解
- Java中使用Jedis操作Redis
- jedis与spring整合及简单的使用RedisTemplate操作
- Java中使用Jedis操作Redis
- jedis操作redis中的map,list和set结构以及redispool
- redis中各种数据类型对应的jedis操作命令
- Java Jedis操作Redis示例(三)——setnx/getset实现分布式锁
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis
- Java中使用Jedis操作Redis的实现代码
- Redis缓存 ava-Jedis操作Redis,基本操作以及 实现对象保存
- Java中使用Jedis操作Redis