redis缓存(jedis), 链接,存,取,String,map,对象

windwos端修改

redis.windows.conf 文件 配置访问ip 和 端口 和 auth 
端口  port 6379
密码  requirepass 123456

 

 cmd cd 到解压目录 执行 redis-server.exe redis.windows.conf   如果不指定配置文件,设置项重新启动后失效

启动成功

 

 

 若报错

[2368] 21 Apr 02:57:05.611 # Creating Server TCP listening socket 127.0.0.1:6379: bind: No error

解决方法:在命令行中运行

redis-cli.exe

127.0.0.1:6379>shutdown

not connected>exit

然后重新运行redis-server.exe redis.windows.conf,启动成功!

 

设置好后 可以使用redismanager 可视化工具连接  安装包,可视化工具&jar

 

 

 

java

 

import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisShardInfo;  public class JedisDemo{  private final static String AUTH = "12345678";//redis 密码 //transient 不会被序列化public void addHashMap(String key, HashMap map){Jedis  redis = new Jedis ("127.0.0.1",6379);//连接redis  redis.auth(AUTH);redis.hmset(key, map);System.out.println("hashmap set success!");}public HashSet queryHashMapByKey(String key){  Jedis  redis = new Jedis ("127.0.0.1",6379);//连接redis  redis.auth(AUTH);//return (HashSet) redis.hvals(key);  return (HashSet) redis.hkeys(key);}  public List queryHashMapByVal(String key){JedisShardInfo info = new JedisShardInfo("127.0.0.1",6379);Jedis redis = new Jedis (info);//连接redis  redis.auth(AUTH);Set keys = (HashSet) redis.hkeys(key);Iterator<String> it = keys.iterator();	Long l = redis.hlen(key);Integer i = Integer.valueOf(l.toString());String[] strw = new String[i];int index = 0;while(it.hasNext()){    String obj1 = it.next();    strw[index] = obj1;index++;System.out.println("key="+obj1 +",  value ="+ redis.hmget(key,obj1));}return redis.hmget(key,strw);}  public String queryString(String key){  Jedis  redis = new Jedis ("127.0.0.1",6379);//连接redis  redis.auth(AUTH);return redis.get(key);  }//加入redis缓存public void addString(String key,String value){  Jedis  redis = new Jedis ("127.0.0.1",6379);//连接redis  redis.auth(AUTH);//验证密码redis.set(key, value);  }  public static void main(String[] args){   //try {Jedis rs = new Jedis ("127.0.0.1",6379);//连接redis  rs.auth(AUTH);//验证密码JedisDemo t1 = new JedisDemo();  //String  t1.addString("key1","第一个值String类型的");  String value = t1.queryString("key1");  System.out.println("get key1 >>>" + value);//HashMap  HashMap map = new HashMap(); for (int i = 0; i < 10000; i++) {//hashmap里的key如果存在就不继续保存到缓存中if(!rs.hexists("hashmap","MapId"+i)){map.put("MapId"+i, "MapValue"+i);  }}if(!rs.exists("hashmap")){t1.addHashMap("hashmap", map);  }HashSet list = t1.queryHashMapByKey("hashmap");  List list2 = t1.queryHashMapByVal("hashmap");  //系统中所有key:  Set<String> keys = rs.keys("*"); Iterator<String> it = keys.iterator();  while(it.hasNext()){    Object obj1 = it.next();    System.out.println(obj1);    }rs.append("001", "一个");//和set方法一样都是调用了 sendCommand(...)rs.del("keyDel");//DEL 移除给定的一个或多个key。如果key不存在,则忽略该命令。  rs.set("keyExpire","一个有20s生命时间的key");rs.expire("keyExpire",10);//expire 设置Key的过期时间(以秒[s]为单位)  //TTL 返回给定key的剩余生存时间(time to live)(以秒为单位) //不设置生命周期 返回值为-1 ,key不存在返回值 -2System.out.println("剩余生存时间"+rs.ttl("keyExpire")+"秒");rs.persist("keyExpire");//PERSIST key 移除给定key的生存时间。  System.out.println(rs.ttl("keyExpire"));//移除生命周期后返回值为 -1//EXISTS 检查给定key是否存在。    String ifKey = "keyExpire";boolean flag = rs.exists(ifKey);//参数3//NX 只有在不存的情况下才设置 key//XX 只有在已经存在的情况下才设置key//参数4//过期时间单位:EX=秒;PX =毫秒if(flag){System.out.println("key:"+ifKey+" ,存在");//key存在设置rs.set(ifKey, ifKey+",这个key存在 设置他的值为此,生命周期20秒", "XX","EX",20);}else{System.out.println("key:"+ifKey+" ,不存在");//key不存在设置rs.set(ifKey, ifKey+",这个key 不存在 设置他的值为此,生命周期15秒","NX","EX",15);}//} catch (Exception e) {//e.printStackTrace();//}}   }  

 

 

 

 

 

//调试等待不同时间可以观察key 生命周期时进行操作,生命周期外操作 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/553410.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win7系统出现蓝屏0x0000003b怎么解决

1、一般遇到这类问题都是通过手动获取该补丁来修复&#xff0c;代码蓝屏0x0000003b一般是指网络错误。 2、那么我们就要对系统浏览器的缓存进行一个清理&#xff0c;在win7系统自带的IE浏览器上在菜单栏里点击工具&#xff0c;点击internet选项&#xff0c;再点击删除历史记录…

数据库PowerDesigner创建图表(模块表分类)

objectBrower中 有时候想区分模块把一组表分类存放在各自的 PhysicalDiagram 中 选中一个 PhysicalDiagram (不选中菜单栏功能键不出) view ->>> Diagram ->>> new Diagram ->>> PhysicalDiagram

win7电脑删除文件特别慢怎么办

在使用电脑的过程中&#xff0c;我们经常需要给电脑清理文件释放些内存空间&#xff0c;提高电脑的运行速度。不过有网友说自己的win7电脑删除文件特别慢是怎么回事&#xff0c;删除文件要很久。下面小编就教下大家win7电脑删除文件特别慢的解决方法。 win7电脑删除文件特别慢…

火狐浏览器账号登录步骤详解

打开火狐浏览器&#xff0c;点击右上角的火狐账户图标&#xff0c;并选取登录; 火狐怎么登录账号&#xff1f;火狐浏览器账号登录步骤详解 火狐怎么登录账号&#xff1f;火狐浏览器账号登录步骤详解 输入点击右键地址&#xff0c;再按下“确定”按钮即可; 火狐怎么登录账号…

微信公众号之微信支付(V3版)jsp页面jsapi统一下单调启支付(java版)

web项目 按顺序一步一步来 准备: 申请了微信支付接口的微信公众号一枚 , 备案的域名网站一枚, (如果有没有的这两个东西会耽误你很久,因为微信支付必须是线上,无法本地调试,) 这里说一下 如果有经济条件的最好申请一台win系统的服务器作为测试服务器这样会使你省去很多的麻烦,装…

中关村win11 32位全新官方版镜像v2021.07

中关村win11 32位全新官方版镜像v2021.07是一款全新的电脑系统&#xff0c;用户可以轻松感受到微软在新版本系统方面的强大性。无论开机菜单的实用性还是桌面的简洁性都给用户带来了全新的感受。系统自带多种类型的装机工具&#xff0c;可以让你的系统更加符合你的需求&#xf…

微信支付之企业付款(提现,理赔,退款)(java)

/*** 提现操作* throws Exception */RequestMapping("doCash")public String doTravelScoreCash(HttpServletRequest request) throws Exception {//微信企业付款 接口url https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfersString company_p…

ie浏览器剪贴板操作警告弹窗关闭方法

很多网友反应在使用浏览器复制东西的时候提示“确实允许此网页访问“剪贴板”吗?”&#xff0c;遇到这种情况该怎么办?如何去掉这个弹窗提示呢? ie浏览器剪贴板操作警告弹窗关闭方法[多图] 每次都弹出这个其实是有点烦的&#xff0c;那么如何解决这个问题呢&#xff0c;小…

微信CA证书(本例使用 java,win7服务器)

CA证书 微信支付HTTPS服务器证书验证指引https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter23_4 下载证书文件 DigiCert_Global_Root_CA.der官方安装步骤

Win11如何查看电池情况 Win11查看电池情况的方法

不少小伙伴在更新Win11系统后&#xff0c;不知道如何查看自己电脑的电池情况&#xff0c;也不知道到哪里改自己的电池使用方法&#xff0c;那么遇到这种问题应该怎么办呢?下面就和小编一起来看看应该怎么操作吧。 Win11查看电池情况的方法 1、首先我们点击下方的开始菜单&am…

div+css 单行或者多行超出文本,数字,字母长度自动省略

/* 超过两行 省略 */ .ellipsis{ margin:0; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; text-overflow:ellipsis;-webkit-line-clamp:2;/* 当前第二行超出用省略号*/ word-break:break-all; }

Edge浏览器运行卡顿怎么办 怎样让Edge浏览器速度更快

在电脑上打开 Edge 浏览器。在 Edge 浏览器的地址栏输入 about:flags&#xff0c;回车。Edge浏览器运行卡顿怎么办&#xff1f;怎样让Edge浏览器速度更快[多图] 这时&#xff0c;浏览器会跳转到开发者设置页面。 Edge浏览器运行卡顿怎么办&#xff1f;怎样让Edge浏览器速度更…

ajax提交加载loading图标遮罩层不显示

代码片段 $("#backgroundLoadingId").show();//显示遮罩$.ajax({url:form.action,type:post,//async:false,//ajax同步时遮罩不会显示 遮罩层未在dom显示出来的时候&#xff0c;同步已经把浏览器卡住, 当ajax执行完毕执行之后的代码 $("#backgroundLoadingId&qu…

爱奇艺如何开启两指双击触发奇观功能

1、手机点击打开“爱奇艺”。 爱奇艺如何开启两指双击触发奇观功能 2、进入首页后&#xff0c;点击右下角“我的”。 爱奇艺如何开启两指双击触发奇观功能 3、跳转新页面后&#xff0c;查找并点击“设置”。 爱奇艺如何开启两指双击触发奇观功能 4、跳转新页面后&#xf…

查看eclipse 内存使用情况

windows-->preferences-->General show heap status 打上勾

ie浏览器自动清理缓存简单设置方法

1.在IE浏览器中点击工具&#xff0c;找到“Internet选项”。 ie浏览器自动清理缓存简单设置方法[多图] 2.打开“Internet选项”后如下图。 ie浏览器自动清理缓存简单设置方法[多图] 3.在选项卡中点击“高级”。然后找到“关闭浏览器时情况…”&#xff0c;在前选上。 ie浏…

tomcat7 加载el表达式 报错 使用tomcat8得以解决

<c:forEach items${[{"value":"1"},{"value":"2"},{"value":"3"}]} var"var" >

风林火山最新系统win11 32位旗舰版v2021.07

风林火山最新系统win11 32位旗舰版v2021.07是微软全新推出的电脑操作系统&#xff0c;这里款系统带来全新的功能&#xff0c;如任务栏居中&#xff0c;右键刷新等等&#xff0c;采用最实用、最纯粹的系统&#xff0c;轻松满足用户多样化的系统服务需求&#xff0c;有需要的朋友…

sap

eclipse sap 插件 http://tools.hana.ondemand.com/mars

Win11怎么从Dev渠道换Beta渠道?Win11从Dev渠道换Beta渠道的方法

Win11怎么从Dev渠道换Beta渠道?一般来说&#xff0c;beta渠道都要比dev渠道更加稳定可靠&#xff0c;bug和漏洞更少&#xff0c;因此很多在更新了dev渠道后&#xff0c;那么我们应该如何从Dev渠道换Beta频道呢?需要先退回原来的系统才能更换&#xff0c;下面很小编一起来看看…