Java连接redis操作

1package com.lml.redis; 2 3 4import java.util.HashMap; 5import java.util.Iterator; 6import java.util.Map; 7import java.util.Map.Entry; 8import java.util.Set; 9 10 11import redis.clients.jedis.Jedis; 12 13 14public class RedisDBHelper { 15Jedis js = null; 16private String host = "127.0.0.1"; 17private int port = 6379; 18 19 20/** 21* 链接redis数据库,进行初始化 22* 23* @param hostUrl:链接服务器的ip/名称 24* @param hostPort:主机的端口号 25* @return:返回是否初始化链接成功 26*/ 27public boolean init(String host, int port) { 28 if (js == null) { 29 js = new Jedis(host, port); 30 } 31 if (js != null) { 32 System.out.println("初始化成功"); 33 return true; 34 } else { 35 return false; 36 } 37} 38 39 40/** 41* 链接redis数据库,进行初始化 42* 43* @param host:链接服务器的ip/名称 44* @return:返回是否初始化链接成功 45*/ 46public boolean init(String host) { 47 if (js == null) { 48 js = new Jedis(host); 49 } 50 if (js != null) { 51 System.out.println("初始化成功"); 52 return true; 53 } else { 54 return false; 55 } 56} 57 58 59/** 60* 新增数据 61* 62* @param key:新增数据的键 63* @param value:新增数据的值 64* @return:返回boolean值,表示是否新增数据成功 65*/ 66public boolean set(String key, String value) { 67 if (js.exists(key)) { 68 System.out.println(key + "已存在"); 69 System.out.println("若要修改数据请使用update()方法"); 70 return false; 71 } else { 72 js.set(key, value); 73 if (js.exists(key)) { 74 if (value.equals(js.get(key))) { 75 System.out.println("增加数据成功"); 76 return true; 77 } else { 78 System.out.println("增加数据失败"); 79 return false; 80 } 81 } else { 82 System.out.println("增加数据失败"); 83 return false; 84 } 85 } 86} 87 88 89/** 90* 添加多条数据 91* 92* @param map:放置多条数据的键值对集合 93* @return:返回boolean值,表示是否新增数据全部成功 94*/ 95public boolean sets(Map<String, String> map) { 96 boolean sets = true; 97 for (Entry<String, String> e : map.entrySet()) { 98 String key = e.getKey(); 99 String value = e.getValue(); 100 boolean set = set(key, value); 101 if (!set) { 102 sets = false; 103 } 104 } 105 return sets; 106} 107 108 109/** 110* 删除数据 111* 112* @param key:要删除数据的key 113* @return:返回boolean值,表示是否删除成功 114*/ 115public boolean delete(String key) { 116 if (js.exists(key)) { 117 if (js.del(key) == 1) { 118 System.out.println("删除数据成功"); 119 return true; 120 } else { 121 System.out.println("删除数据失败"); 122 return false; 123 } 124 } else { 125 System.out.println(key + "不存在"); 126 return false; 127 } 128} 129 130 131/** 132* 删除一组数据 133* 134* @param keys:要删除数据键集合 135* @return:返回boolean值,表示是否全部删除成功 136*/ 137public boolean deletes(String[] keys) { 138 boolean deletes = true; 139 for (String key : keys) { 140 boolean delete = delete(key); 141 if (!delete) { 142 deletes = false; 143 } 144 } 145 return deletes; 146} 147 148 149/** 150* 修改数据 151* 152* @param key:要修改数据的key 153* @param value:要修改数据的值 154* @return:返回boolean值,表示是否修改成功 155*/ 156public boolean update(String key, String value) { 157 if (js.exists(key)) { 158 js.set(key, value); 159 if (value.equals(js.get(key))) { 160 System.out.println("修改数据成功"); 161 return true; 162 } else { 163 System.out.println("修改数据失败"); 164 return false; 165 } 166 } else { 167 System.out.println(key + "不存在"); 168 System.out.println("若要新增数据请使用set()方法"); 169 return false; 170 } 171} 172 173 174/** 175* 获取表中数据 176* 177* @param key:要查询的key 178* @return:返回查找到的数据;如果键不存在则返回null; 179*/ 180public String get(String key) { 181 if (js.exists(key)) { 182 System.out.println(js.get(key)); 183 return js.get(key); 184 } else { 185 System.out.println(key + "不存在"); 186 return null; 187 } 188} 189/** 190* 获取多条key的值 191* @param keys:多条key的集合 192* @return 193*/ 194public Map<String, String> gets(String[] keys) { 195 Map<String, String> map = new HashMap<String, String>(); 196 for (String key : keys) { 197 if (js.exists(key)) { 198 String value = js.get(key); 199 map.put(key, value); 200 System.out.println(key + "-" + value); 201 } else { 202 System.out.println(key + "不存在"); 203 } 204 } 205 return map; 206} 207 208 209/** 210* 获得所有数据的键 211*/ 212public void getKeys() { 213 Set<String> set = js.keys("*"); 214 if (set.size() != 0) { 215 Iterator<String> it = set.iterator(); 216 while (it.hasNext()) { 217 String key = it.next(); 218 System.out.println(key); 219 } 220 } else { 221 System.out.println("数据库暂时没有数据"); 222 } 223} 224 225 226/** 227* 查询所有数据 228*/ 229public void getAll() { 230 Set<String> set = js.keys("*"); 231 if (set.size() != 0) { 232 Iterator<String> it = set.iterator(); 233 while (it.hasNext()) { 234 String key = it.next(); 235 String value = js.get(key); 236 System.out.println(key + "-" + value); 237 } 238 } else { 239 System.out.println("数据库暂时没有数据"); 240 } 241} 242 243/** 244* 关闭链接 245*/ 246public void unInit() { 247 if (js != null) { 248 js.close(); 249 js = null; 250 } 251 } 252}
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )