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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java代码怎么正则删除redis的数据相关的知识,希望对你有一定的参考价值。

java代码怎么正则删除redis的数据,即批量删除符合一定条件的redis数据,现在介绍批量删除已某些字符开头的redis数据:

在Java中连接Redis,并进行操作,首先得加载以JAR包形式存在的Java中的Redis Client,我们这里选择Jedis。以下是使用Jedis的具体步骤:

    在Maven项目中,在pom.xml中增加如下语句(即加载Jedis jar包):

    <dependency>  

               <groupId>redis.clients</groupId>  

                <artifactId>jedis</artifactId>  

              <version>2.7.2</version>  

                <type>jar</type>  

    </dependency>

    如不是Maven工程,就自行下载Jedis jar包引用即可。  

    在加载Jedis JAR包之后,可以直接使用新建一个Jedis实例的方法,来建立一个到Redis的连接,并进行操作。不过跟mysql一样,每次操作的时候,都建立连接,很耗费性能。解决方法就是从一个连接池中取出连接对象,用完还回去。使用连接池的方案还能解决很多同步性问题。

    在Jedis中,管理Redis连接的类是JedisPool

    package com.atzy


    import redis.clients.jedis.Jedis;  

    import redis.clients.jedis.JedisPool;  

      

    public class RedisHelper   

       public static void main(String[] args)   

            JedisPool jedisPool = new JedisPool("localhost", 6379);  

           Jedis jedis = null;  

            try   

                jedis = jedisPool.getResource();  

               String pre_str="ab";   

                Set<String> set = jedis.keys(pre_str +"*");  

                Iterator<String> it = set.iterator();  

                 while(it.hasNext()) 

                    String keyStr = it.next();  

                    System.out.println(keyStr);  

                    jedis.del(keyStr);  

                 

             catch (Exception e)   

                e.printStackTrace();  

             finally   

                if (jedis != null)  

                    jedis.close();  

              

            jedisPool.destroy();  

          

     

以上代码则是批量删除以某字符串前缀的key 。

参考技术A RedisDO rd = new RedisDO();
rd.open();
Set s = rd.jedis.keys("*");
Iterator it = s.iterator();

while (it.hasNext())
String key = (String) it.next();
String value = rd.jedis.get(key);
System.out.println(key + value);

rd.close();本回答被提问者采纳

以上是关于java代码怎么正则删除redis的数据的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式怎么匹配字符串中最后一串数字?

Java面试java基础,正则表达式java怎么匹配...

java正则表达式,怎么匹配空白行

java怎么从多台redis集群取数据库

Java面试宝典,java输出double保留两位小数

Java经典入门教程!日期转换成年月日格式java