java操作redis: 将string、list、map、自定义的对象保存到redis中

来源:互联网 发布:js 数组的长度 编辑:程序博客网 时间:2024/05/22 05:22
<div id="article_content" class="article_content tracking-ad" data-mod="popu_307" data-dsm="post">


<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
<span style="background-color:rgb(199,237,204)">一、操作string 、list 、map 对象</span></div>
<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
<span style="background-color:rgb(199,237,204)">1、引入jar:</span></div>
<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
jedis-2.1.0.jar</div>
<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
&nbsp;</div>
<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
2、代码</div>
<div style="font-size:14px; font-family:'Microsoft YaHei UI','Microsoft YaHei',SimSun,'Segoe UI',Tahoma,Helvetica,sans-serif,'Microsoft YaHei',Georgia,Helvetica,Arial,sans-serif,宋体,PMingLiU,serif; line-height:21px">
<div><span style="font-family:'Courier New'; color:rgb(63,95,191); font-size:10pt">/**</span></div>
<div><span style="font-family:'Courier New'; color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<span style="color:rgb(127,159,191)"><strong>@param</strong></span>&nbsp;args</span></div>
<div><span style="font-family:'Courier New'; color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>static</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>void</strong></span>&nbsp;main(String[]&nbsp;args)&nbsp;{</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//连接<span style="text-decoration:underline">redis</span>服务</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;Jedis&nbsp;jedis&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;Jedis(<span style="color:rgb(42,0,255)">"192.168.88.15"</span>,6379);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//密码验证-如果你没有设置<span style="text-decoration:underline">redis</span>密码可不验证即可使用相关命令</span></span></div>
<div><span style="font-family:'Courier New'; color:rgb(63,127,95); font-size:10pt">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.auth("<span style="text-decoration:underline">abcdefg</span>");</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//简单的key-value&nbsp;存储</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.set(<span style="color:rgb(42,0,255)">"redis"</span>,&nbsp;<span style="color:rgb(42,0,255)">"myredis"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.get(<span style="color:rgb(42,0,255)">"redis"</span>));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//在原有值得基础上添加,如若之前没有该key,则导入该key</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//之前已经设定了<span style="text-decoration:underline">redis</span>对应"<span style="text-decoration:underline">myredis</span>",此句执行便会使<span style="text-decoration:underline">redis</span>对应"<span style="text-decoration:underline">myredisyourredis</span>"</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.append(<span style="color:rgb(42,0,255)">"redis"</span>,&nbsp;<span style="color:rgb(42,0,255)">"yourredis"</span>);&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.append(<span style="color:rgb(42,0,255)">"content"</span>,&nbsp;<span style="color:rgb(42,0,255)">"rabbit"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//<span style="text-decoration:underline">mset</span>&nbsp;是设置多个key-value值&nbsp;&nbsp;&nbsp;参数(key1,value1,key2,value2,...,<span style="text-decoration:underline">keyn</span>,<span style="text-decoration:underline">valuen</span>)</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//<span style="text-decoration:underline">mget</span>&nbsp;是获取多个key所对应的value值&nbsp;&nbsp;参数(key1,key2,key3,...,<span style="text-decoration:underline">keyn</span>)&nbsp;&nbsp;返回的是个list</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.mset(<span style="color:rgb(42,0,255)">"name1"</span>,<span style="color:rgb(42,0,255)">"yangw"</span>,<span style="color:rgb(42,0,255)">"name2"</span>,<span style="color:rgb(42,0,255)">"demon"</span>,<span style="color:rgb(42,0,255)">"name3"</span>,<span style="color:rgb(42,0,255)">"elena"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.mget(<span style="color:rgb(42,0,255)">"name1"</span>,<span style="color:rgb(42,0,255)">"name2"</span>,<span style="color:rgb(42,0,255)">"name3"</span>));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//map</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Map&lt;String,String&gt;&nbsp;user&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;HashMap&lt;String,String&gt;();</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.put(<span style="color:rgb(42,0,255)">"name"</span>,&nbsp;<span style="color:rgb(42,0,255)">"cd"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.put(<span style="color:rgb(42,0,255)">"password"</span>,&nbsp;<span style="color:rgb(42,0,255)">"123456"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//map存入<span style="text-decoration:underline">redis</span></span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.hmset(<span style="color:rgb(42,0,255)">"user"</span>,&nbsp;user);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//<span style="text-decoration:underline">mapkey</span>个数</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"len:%d"</span>,&nbsp;jedis.hlen(<span style="color:rgb(42,0,255)">"user"</span>)));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//map中的所有键值</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"keys:&nbsp;%s"</span>,&nbsp;jedis.hkeys(<span style="color:rgb(42,0,255)">"user"</span>)&nbsp;));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//map中的所有value</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"values:&nbsp;%s"</span>,&nbsp;jedis.hvals(<span style="color:rgb(42,0,255)">"user"</span>)&nbsp;));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//取出map中的name字段值</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&lt;String&gt;&nbsp;rsmap&nbsp;=&nbsp;jedis.hmget(<span style="color:rgb(42,0,255)">"user"</span>,&nbsp;<span style="color:rgb(42,0,255)">"name"</span>,<span style="color:rgb(42,0,255)">"password"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(rsmap);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//删除map中的某一个键值&nbsp;password</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.hdel(<span style="color:rgb(42,0,255)">"user"</span>,&nbsp;<span style="color:rgb(42,0,255)">"password"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.hmget(<span style="color:rgb(42,0,255)">"user"</span>,&nbsp;<span style="color:rgb(42,0,255)">"name"</span>,&nbsp;<span style="color:rgb(42,0,255)">"password"</span>));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//list</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.del(<span style="color:rgb(42,0,255)">"listDemo"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.lrange(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;0,&nbsp;-1));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.lpush(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;<span style="color:rgb(42,0,255)">"A"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.lpush(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;<span style="color:rgb(42,0,255)">"B"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.lpush(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;<span style="color:rgb(42,0,255)">"C"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.lrange(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;0,&nbsp;-1));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(jedis.lrange(<span style="color:rgb(42,0,255)">"listDemo"</span>,&nbsp;0,&nbsp;1));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//set</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.sadd(<span style="color:rgb(42,0,255)">"sname"</span>,&nbsp;<span style="color:rgb(42,0,255)">"wobby"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.sadd(<span style="color:rgb(42,0,255)">"sname"</span>,&nbsp;<span style="color:rgb(42,0,255)">"kings"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.sadd(<span style="color:rgb(42,0,255)">"sname"</span>,&nbsp;<span style="color:rgb(42,0,255)">"demon"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"set&nbsp;num:&nbsp;%d"</span>,&nbsp;jedis.scard(<span style="color:rgb(42,0,255)">"sname"</span>)));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"all&nbsp;members:&nbsp;%s"</span>,&nbsp;jedis.smembers(<span style="color:rgb(42,0,255)">"sname"</span>)));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"is&nbsp;member:&nbsp;%B"</span>,&nbsp;jedis.sismember(<span style="color:rgb(42,0,255)">"sname"</span>,&nbsp;<span style="color:rgb(42,0,255)">"wobby"</span>)));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"rand&nbsp;member:&nbsp;%s"</span>,&nbsp;jedis.srandmember(<span style="color:rgb(42,0,255)">"sname"</span>)));</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//删除一个对象</span></span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jedis.srem(<span style="color:rgb(42,0,255)">"sname"</span>,&nbsp;<span style="color:rgb(42,0,255)">"demon"</span>);</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(String.<span style="font-style:italic">format</span>(<span style="color:rgb(42,0,255)">"all&nbsp;members:&nbsp;%s"</span>,&nbsp;jedis.smembers(<span style="color:rgb(42,0,255)">"sname"</span>)));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>&nbsp;</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">二、将自定义对象保存到redis中:<br>
</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>&nbsp;</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">1、自定义pojo 实现Serializable 接口:</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>&nbsp;</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>package<span style="color:windowtext; font-weight:normal">&nbsp;cn.mingyuan.redis;</span></strong></span></div>
<div></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.Serializable;</span></strong></span></div>
<div></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">/**</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;*&nbsp;测试用<span style="text-decoration:underline">pojo</span>,实现了<span style="text-decoration:underline">Serializable</span>,以便进行系列化操作</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;*&nbsp;</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;*&nbsp;<span style="color:rgb(127,159,191)"><strong>@author</strong></span>&nbsp;<span style="text-decoration:underline">mingyuan</span></span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;*&nbsp;</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;*/</span></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>public<span style="color:windowtext; font-weight:normal">&nbsp;</span>class<span style="color:windowtext; font-weight:normal">&nbsp;Person&nbsp;</span>implements<span style="color:windowtext; font-weight:normal">&nbsp;Serializable&nbsp;{</span></strong></span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>private</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>static</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>final</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>long</strong></span>&nbsp;<span style="color:rgb(0,0,192)"><em>serialVersionUID</em></span>&nbsp;=&nbsp;-3562550857760039655L;</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>private</strong></span>&nbsp;String&nbsp;<span style="color:rgb(0,0,192)">name</span>;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>private</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>int</strong></span>&nbsp;<span style="color:rgb(0,0,192)">age</span>;</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;Person(){}</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;Person(String&nbsp;name,&nbsp;<span style="color:rgb(127,0,85)"><strong>int</strong></span>&nbsp;age)&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>super</strong></span>();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>this</strong></span>.<span style="color:rgb(0,0,192)">name</span>&nbsp;=&nbsp;name;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>this</strong></span>.<span style="color:rgb(0,0,192)">age</span>&nbsp;=&nbsp;age;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;String&nbsp;getName()&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>return</strong></span>&nbsp;<span style="color:rgb(0,0,192)">name</span>;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>void</strong></span>&nbsp;setName(String&nbsp;name)&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>this</strong></span>.<span style="color:rgb(0,0,192)">name</span>&nbsp;=&nbsp;name;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>int</strong></span>&nbsp;getAge()&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>return</strong></span>&nbsp;<span style="color:rgb(0,0,192)">age</span>;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>void</strong></span>&nbsp;setAge(<span style="color:rgb(127,0,85)"><strong>int</strong></span>&nbsp;age)&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>this</strong></span>.<span style="color:rgb(0,0,192)">age</span>&nbsp;=&nbsp;age;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(100,100,100)">@Override</span></span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;String&nbsp;toString()&nbsp;{</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>return</strong></span>&nbsp;<span style="color:rgb(42,0,255)">"Person&nbsp;[name="</span>&nbsp;+&nbsp;<span style="color:rgb(0,0,192)">name</span>&nbsp;+&nbsp;<span style="color:rgb(42,0,255)">",&nbsp;age="</span>&nbsp;+&nbsp;<span style="color:rgb(0,0,192)">age</span>&nbsp;+&nbsp;<span style="color:rgb(42,0,255)">"]"</span>;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">}</span></div>
</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>&nbsp;</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt">2、测试类:</span></div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>&nbsp;</div>
<div><span style="font-family:'Courier New'; color:windowtext; font-size:10pt"></span>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>package<span style="color:windowtext; font-weight:normal">&nbsp;cn.mingyuan.redis;</span></strong></span></div>
<div></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.ByteArrayInputStream;</span></strong></span></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.ByteArrayOutputStream;</span></strong></span></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.IOException;</span></strong></span></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.ObjectInputStream;</span></strong></span></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;java.io.ObjectOutputStream;</span></strong></span></div>
<div></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>import<span style="color:windowtext; font-weight:normal">&nbsp;redis.clients.jedis.Jedis;</span></strong></span></div>
<div></div>
<div><span style="color:rgb(127,0,85); font-size:10pt"><strong>public<span style="color:windowtext; font-weight:normal">&nbsp;</span>class<span style="color:windowtext; font-weight:normal">&nbsp;Test&nbsp;{</span></strong></span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,95,191)">/**</span></span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<span style="color:rgb(127,159,191)"><strong>@param</strong></span>&nbsp;args</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<span style="color:rgb(127,159,191)"><strong>@throws</strong></span>&nbsp;IOException</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;<span style="color:rgb(127,159,191)"><strong>@throws</strong></span>&nbsp;ClassNotFoundException</span></div>
<div><span style="color:rgb(63,95,191); font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>public</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>static</strong></span>&nbsp;<span style="color:rgb(127,0,85)"><strong>void</strong></span>&nbsp;main(String[]&nbsp;args)&nbsp;<span style="color:rgb(127,0,85)"><strong>throws</strong></span>&nbsp;IOException,</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ClassNotFoundException&nbsp;{</span></div>
<div><span style="color:rgb(63,127,95); font-size:10pt">//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="text-decoration:underline">Jedis</span>&nbsp;<span style="text-decoration:underline">redis</span>&nbsp;=&nbsp;new&nbsp;&nbsp;<span style="text-decoration:underline">Jedis</span>("192.168.88.15");</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Jedis&nbsp;redis&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;Jedis(<span style="color:rgb(42,0,255)">"192.168.88.15"</span>,&nbsp;6379);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//&nbsp;connect可以不要,因为在执行set操作的时候会先进行判断客户端是否于服务器端建立了连接,若无,则启动连接过程</span></span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redis.connect();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;set&nbsp;=&nbsp;redis.set(<span style="color:rgb(42,0,255)">"mingyuan"</span>,&nbsp;<span style="color:rgb(42,0,255)">"1"</span>);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(<span style="color:rgb(42,0,255)">"&nbsp;set&nbsp;result&nbsp;\t"</span>&nbsp;+&nbsp;set);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redis.incr(<span style="color:rgb(42,0,255)">"mingyuan"</span>);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;string&nbsp;=&nbsp;redis.get(<span style="color:rgb(42,0,255)">"mingyuan"</span>);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(<span style="color:rgb(42,0,255)">"&nbsp;get&nbsp;result&nbsp;of&nbsp;key&nbsp;'mingyuan'&nbsp;\t"</span>&nbsp;+&nbsp;string);</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(63,127,95)">//&nbsp;下面是对对象进行存储的测试代码</span></span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ByteArrayOutputStream&nbsp;bos&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;ByteArrayOutputStream();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ObjectOutputStream&nbsp;oos&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;ObjectOutputStream(bos);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Person&nbsp;person&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;Person(<span style="color:rgb(42,0,255)">"liudehua"</span>&nbsp;,22);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;oos.writeObject(person);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>byte</strong></span>[]&nbsp;byteArray&nbsp;=&nbsp;bos.toByteArray();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;oos.close();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bos.close();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;setObjectRet&nbsp;=&nbsp;redis.set(<span style="color:rgb(42,0,255)">"mingyuan"</span>.getBytes(),&nbsp;byteArray);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(<span style="color:rgb(42,0,255)">"&nbsp;set&nbsp;object&nbsp;return&nbsp;\t"</span>&nbsp;+&nbsp;setObjectRet);</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:rgb(127,0,85)"><strong>byte</strong></span>[]&nbsp;bs&nbsp;=&nbsp;redis.get(<span style="color:rgb(42,0,255)">"mingyuan"</span>.getBytes());</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ByteArrayInputStream&nbsp;bis&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;ByteArrayInputStream(bs);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ObjectInputStream&nbsp;inputStream&nbsp;=&nbsp;<span style="color:rgb(127,0,85)"><strong>new</strong></span>&nbsp;ObjectInputStream(bis);</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Person&nbsp;readObject&nbsp;=&nbsp;(Person)&nbsp;inputStream.readObject();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.<span style="color:rgb(0,0,192)"><em>out</em></span>.println(<span style="color:rgb(42,0,255)">"&nbsp;read&nbsp;object&nbsp;\t"</span>&nbsp;+&nbsp;readObject.toString());</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inputStream.close();</span></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bis.close();</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redis.disconnect();</span></div>
<div></div>
<div><span style="color:windowtext; font-size:10pt">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<div></div>
<span style="color:windowtext; font-size:10pt">}</span></div>
</div>
   
</div>
原创粉丝点击