思路:
1、链接redis数据库,连接成功
2、js.del(key),按照指定的key进行删除,封装删除方法3、js.keys("*"),获取所有键keys的集合,对set集合进行遍历4、对遍历结果进行判断,包含关键字的,即想删除的,都调用封装好的删除方法即可示例代码
import org.apache.log4j.Logger;import org.testng.annotations.Test;import redis.clients.jedis.Jedis;import java.util.Iterator;import java.util.Set;/** * @author rong.rong * redis操作类 */public class RedisDBHelper { static Jedis js = null; public static Logger logger = Logger.getLogger(RedisDBHelper.class); private static String hostUrl = BaseInfo.getInfo("hostUrl"); private static int hostPort = Integer.parseInt(BaseInfo.getInfo("hostPort")); private static String authPassWord = BaseInfo.getInfo("authPassWord"); /** * 链接redis数据库,进行初始化 * * @return:返回是否初始化链接成功 */ public static boolean init() { if (js == null) { js = new Jedis(hostUrl, hostPort); js.auth(authPassWord); } if (js != null) { logger.info("初始化成功"); return true; } else { return false; } } /** * 删除数据 * * @param key:要删除数据的key * @return:返回boolean值,表示是否删除成功 */ public static boolean delete(String key) { if (js.exists(key)) { if (js.del(key) == 1) { logger.info("删除数据成功"); return true; } else { logger.info("删除数据失败"); return false; } } else { logger.info(key + "不存在"); return false; } } /** * 按照关键字删除redis缓存数据 */ public static void deleteData(String keys) { //链接redis数据库,进行初始化 init(); Setset = js.keys("*"); if (set.size() != 0) { Iterator it = set.iterator(); while (it.hasNext()) { String key = it.next(); if (key.contains(keys)) { logger.info(key); delete(key); } } } else { logger.info("数据库暂时没有数据"); } //关闭链接 unInit(); } /** * 关闭链接 */ public static void unInit() { if (js != null) { js.close(); js = null; } } @Test public void test() { deleteData("key"); }}