redis的java程式碼(入門)
阿新 • • 發佈:2020-03-02
Demo
package com.zy; import redis.clients.jedis.Jedis; public class Demo { public static void main(String[] args) { String url="120.77.83.186"; Jedis jedis = new Jedis(url,6379); System.out.println(jedis); String ping = jedis.ping(); System.out.println(ping); jedis.close(); } }
RedisTest
package com.zy; import redis.clients.jedis.Jedis; import java.util.*; public class RedisTest { private static String host="120.77.83.186"; private static int port=6379; public static void main(String[] args) { Jedis jedis = new Jedis(host,port); //all key Set<String> keys = jedis.keys("*"); // Iterator<String> iterator = keys.iterator(); for (Iterator<String> stringIterator = keys.iterator(); stringIterator.hasNext(); ) { String next = stringIterator.next(); System.out.println(next); } Boolean k1 = jedis.exists("k1"); System.out.println("exists:k1 "+k1); Long k11 = jedis.ttl("k1"); System.out.println("ttl:k1 "+k11); //String RedisString(jedis); RedisList(jedis); RedisSet(jedis); RedisHash(jedis); RedisZSet(jedis); jedis.close(); } private static void RedisZSet(Jedis jedis) { System.out.println("************Zset**********"); jedis.zadd("zset1",60d,"v1"); jedis.zadd("zset1",70d,"v2"); jedis.zadd("zset2","v2"); jedis.zadd("zset3",80d,"v3"); Set<String> zset1 = jedis.zrange("zset1",-1); for (Iterator<String> iterator = zset1.iterator(); iterator.hasNext(); ) { String next = iterator.next(); System.out.println(next); } } private static void RedisHash(Jedis jedis) { System.out.println("**************Hash************"); jedis.hset("hash1","username","lisi"); System.out.println(jedis.hget("hash1","username")); Map<String,String> map=new HashMap<String,String>(); map.put("userName","zy"); map.put("telephone","15572106051"); map.put("age","20"); String hash2 = jedis.hmset("hash2",map); List<String> hmget = jedis.hmget("hash2","userName","telephone","age"); for (String s : hmget) { System.out.println(s); } } private static void RedisSet(Jedis jedis) { System.out.println("***************Set*************"); jedis.sadd("orders","jd1"); jedis.sadd("orders","jd2"); jedis.sadd("orders","jd3"); Set<String> orders = jedis.smembers("orders"); for (Iterator<String> iterator = orders.iterator(); iterator.hasNext(); ) { String next = iterator.next(); System.out.println(next); } int size = jedis.smembers("orders").size(); System.out.println("set前的大小"+size); jedis.srem("orders","jd2"); System.out.println("set後的大小"+jedis.smembers("orders").size()); } private static void RedisList(Jedis jedis) { System.out.println("****************List***************"); jedis.lpush("redislist","v1","v2","v3"); List<String> redislist = jedis.lrange("redislist",-1); for (String s : redislist) { System.out.println(s); } } private static void RedisString(Jedis jedis) { System.out.println("***************String***********************"); if (!jedis.exists("k1")){ jedis.append("k1","myredis"); } System.out.println(jedis.get("k1")); jedis.set("k4","k4_redis"); // System.out.println("***************************************"); jedis.mset("str11","str22","str33","v3"); List<String> mget = jedis.mget("str11","str33"); System.out.println(mget); } }
TestRedisTranaction
package com.zy; import redis.clients.jedis.Jedis; import redis.clients.jedis.Response; import redis.clients.jedis.Transaction; public class TestReidsTranaction { private static String host="120.77.83.186"; private static int port=6379; public static void main(String[] args) { Jedis jedis = new Jedis(host,port); Transaction multi = jedis.multi(); Response<String> response = multi.get("seriaNum"); multi.set("serialNum","s002"); response=multi.get("serialNum"); multi.lpush("list1","a"); multi.lpush("list2","b"); multi.lpush("list3","c"); multi.exec(); System.out.println("serialNum :"+response.get()); jedis.close(); } }
TestReidsMS
package com.zy;
import redis.clients.jedis.Jedis;
public class TestReidsMS {
private static String host="120.77.83.186";
public static void main(String[] args) throws InterruptedException {
Jedis jedis_M = new Jedis(host,6379);
Jedis jedis_S = new Jedis(host,6380);
jedis_S.slaveof("127.0.0.1",6379);
jedis_M.set("k6","v6");
Thread.sleep(500);
System.out.println(jedis_S.get("k6"));
jedis_M.close();
jedis_S.close();
}
}
JedisPoolUtil
package com.zy;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class JedisPoolUtil {
private static volatile JedisPool jedisPool = null;
// 被volatile修飾的變數不會被本地執行緒快取,對該變數的讀寫都是直接操作共享記憶體。
private JedisPoolUtil() {
}
public static JedisPool getJedisPoolInstance() {
if (null == jedisPool) {
synchronized (JedisPoolUtil.class) {
if (null == jedisPool) {
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxTotal(1000);
poolConfig.setMaxIdle(32);
poolConfig.setMaxWaitMillis(100 * 1000);
poolConfig.setTestOnBorrow(true);
jedisPool = new JedisPool(poolConfig,"120.77.83.186",6379);
}
}
}
return jedisPool;
}
public static void release(JedisPool jedisPool,Jedis jedis) {
if (null != jedis) {
Jedis jedis2 = null;
try {
jedis2 = jedisPool.getResource();
} finally {
jedis2.close();
}
}
}
}