java中操作redis

Posted lvlin241

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中操作redis相关的知识,希望对你有一定的参考价值。

  1 package com.redis;
  2 
  3 import java.io.IOException;
  4 import java.util.concurrent.ConcurrentHashMap;
  5 
  6 import redis.clients.jedis.Jedis;
  7 import redis.clients.jedis.Transaction;
  8 /**
  9  * java中操作redis
 10  * 
 11  * @author Administrator
 12  *
 13  */
 14 public class RedisTest {
 15     
 16     // 连接redis
 17     private static synchronized Jedis getJedis(String ip){
 18         final Jedis jr = new Jedis(ip);
 19         jr.auth("@admin123");
 20         System.out.println("连接成功: \t"+jr.ping());
 21         return jr;
 22     }
 23     // 关闭redis连接
 24     private static synchronized void closeJedis(Jedis jr){
 25         jr.close();
 26     }
 27     // 判断是否存在key 
 28     private static boolean keyIsExist(Jedis jd,String key){
 29         return jd.exists(key);
 30     }
 31     // 删除元素
 32     private static void delKey(Jedis jd, String key){
 33         jd.del(key);
 34     }
 35     // 操作String
 36     private static synchronized void opString(Jedis jr){
 37         if(keyIsExist(jr,"company"))
 38             delKey(jr,"company");
 39         jr.set("company", "oracle");
 40         System.out.println(jr.get("company"));
 41     }
 42     // 操作hash
 43     private static void opHash(Jedis jr){
 44         if(keyIsExist(jr,"user1"))
 45             delKey(jr,"user1");
 46         ConcurrentHashMap<String,String> chm = new ConcurrentHashMap<String, String>();
 47         chm.put("name", "Tom");
 48         chm.put("age", "26");
 49         chm.put("major", "computer");
 50         jr.hmset("user1", chm);
 51         System.out.println(jr.hgetAll("user1").get("name"));
 52         System.out.println(jr.hgetAll("user1").get("age"));
 53         System.out.println(jr.hgetAll("user1").get("major"));
 54     }
 55     // 操作list
 56     private static synchronized void opList(Jedis jr){
 57         if(keyIsExist(jr,"colorSet"))
 58             delKey(jr,"colorSet");
 59         jr.lpush("colorSet", "red","blue","yellow","red");
 60         System.out.println(jr.lrange("colorSet", 0, 10));
 61     }
 62     // 操作Set
 63     private static synchronized void opSet(Jedis jr){
 64         if(keyIsExist(jr,"hobby"))
 65             delKey(jr,"hobby");
 66         jr.sadd("hobby", "running","basketball","volleyball","volleyball");
 67         System.out.println(jr.smembers("hobby"));
 68         System.out.println(jr.smembers("hobby").size());
 69     }
 70     // 操作ZSet
 71     private static synchronized void opZset(Jedis jr){
 72         if(keyIsExist(jr,"hobby2"))
 73             delKey(jr,"hobby2");
 74         jr.zadd("hobby2",2.0, "running");
 75         jr.zadd("hobby2",2.0, "basketball");
 76         jr.zadd("hobby2",2.0, "volleyball");
 77         jr.zadd("hobby2",2.0, "volleyball");
 78         for(String s:jr.zrangeByScore("hobby2", 0, 4))
 79             System.out.println(s);
 80     }
 81     // 数据库备份
 82     private static synchronized void save(Jedis jr){
 83         jr.save();
 84     }
 85     // 事务控制
 86     private static void tranController(Jedis jr) throws IOException{
 87         System.out.println("**************************************开启事务**************************************");
 88         Transaction trans = jr.multi();
 89         System.out.println("*********java Redis 开始执行事务*********");
 90         trans.exec();
 91         System.out.println("*********java Redis operating String*********");
 92         opString(jr);
 93         System.out.println("*********java Redis operating String over*********");
 94         System.out.println("*********java Redis operating hash*********");
 95         opHash(jr);
 96         System.out.println("*********java Redis operating hash over*********");
 97         System.out.println("*********java Redis operating List*********");
 98         opList(jr);
 99         System.out.println("*********java Redis operating List over*********");
100         System.out.println("*********java Redis operating Set*********");
101         opSet(jr);
102         System.out.println("*********java Redis operating Set over*********");
103         System.out.println("*********java Redis operating zSet*********");
104         opZset(jr);
105         System.out.println("*********java Redis operating zSet over*********");
106         System.out.println("*********java Redis save redis db*********");
107         save(jr);
108         System.out.println("*********java Redis save redis db over*********");
109         trans.close();
110         System.out.println("**************************************关闭事务**************************************");
111         System.out.println("*********java Redis close redis db connection*********");
112         closeJedis(jr);
113         System.out.println("*********java Redis close redis db connection over*********");
114     }
115     public static void main(String[] args) throws IOException{
116         Jedis jr = getJedis("localhost");
117         tranController(jr);
118     }
119 }

 

以上是关于java中操作redis的主要内容,如果未能解决你的问题,请参考以下文章

java:redis(java代码操作redis)

jedis连接redis

java代码怎么正则删除redis的数据

Java代码redis基础操作

redis,1java操作redis: 将stringlistmap自己定义的对象保存到redis中

java操作redis都有哪些方法