java使用jeids实现redis2.6的String操作(1)
2019独角兽企业重金招聘Python工程师标准>>>
代码:
https://github.com/viakiba/redis
package com.viakiba.redis.step3;import java.util.List;import org.junit.Test;import redis.clients.jedis.Jedis;/*** @description: redis,String 相关的命令,部分命令在step1中已经演示(set/setnx/setex/get/)* @author viakiba* @date 2017年8月28日*/
public class App6 {static interface RedisConfig {public final static String HOST = "127.0.0.1";public final static int PORT = 6379;}/*** @description: 测试连接是否通过* @author: viakiba* @throws Exception*/@Testpublic void test1() throws Exception {//连接测试是否通过Jedis jedis = new Jedis(RedisConfig.HOST,RedisConfig.PORT);System.out.println(jedis.ping());//pong则通过jedis.close();}/*** @description: Append/getrange/SETRANGE/strlen* @author: viakiba* @throws Exception*/@Testpublic void test2() throws Exception {Jedis jedis = new Jedis(RedisConfig.HOST,RedisConfig.PORT);
// jedis.set("demo", "de");//set
// String string = jedis.get("demo");//get
// System.out.println(string);// 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。
// 如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。
// jedis.append("demo", "mo");//append
// http://redisdoc.com/string/append.html
// 扩展 APPEND 可以为一系列定长(fixed-size)数据(sample)提供一种紧凑的表示方式,通常称之为时间序列。
// 每当一个新数据到达的时候,执行以下命令:
// 可以考虑使用 UNIX 时间戳作为时间序列的键名,这样一来,可以避免单个 key 因为保存过大的时间序列而占用大量内存,另一方面,也可以节省下大量命名空间。jedis.set("ts", "");jedis.append("ts", "0043");jedis.append("ts", "0056");System.out.println(jedis.get("ts"));System.out.println(jedis.getrange("ts", 4, 7));jedis.setrange("ts", 4, "5600");System.out.println(jedis.getrange("ts", 4, 7));String str = jedis.get("demo");System.out.println(str);// 返回 key 所储存的字符串值的长度。
// 当 key 储存的不是字符串值时,返回一个错误。System.out.println(jedis.strlen("ts")+":"+jedis.get("ts"));//strlen jedis.close();}/*** @description: MSET/MGET/MSETNX/PSETEX* @author: viakiba* @throws Exception*/@Testpublic void test3() throws Exception {Jedis jedis = new Jedis(RedisConfig.HOST,RedisConfig.PORT);// MSET
// 同时设置一个或多个 key-value 对。
// 如果某个给定 key 已经存在,那么 MSET 会用新值覆盖原来的旧值,如果这不是你所希望的效果,请考虑使用 MSETNX 命令:它只会在所有给定 key 都不存在的情况下进行设置操作。
// MSET 是一个原子性(atomic)操作,所有给定 key 都会在同一时间内被设置,某些给定 key 被更新而另一些给定 key 没有改变的情况,不可能发生。jedis.mset("1","2","3","4","5","6","7","8");// MGET
// 返回所有(一个或多个)给定 key 的值。
// 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。因此,该命令永不失败。List<String> mget = jedis.mget("1","3","5","7","9");System.out.println(mget);jedis.close();}/*** @description: SETBIT* @author: viakiba* @throws Exception*/@Testpublic void test4() throws Exception {Jedis jedis = new Jedis(RedisConfig.HOST,RedisConfig.PORT);/*对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。位的设置或清除取决于 value 参数,可以是 0 也可以是 1 。当 key 不存在时,自动生成一个新的字符串值。字符串会进行伸展(grown)以确保它可以将 value 保存在指定的偏移量上。当字符串值进行伸展时,空白位置以 0 填充。offset 参数必须大于或等于 0 ,小于 2^32 (bit 映射被限制在 512 MB 之内)。*/jedis.setbit("bit", 100, false);System.out.println(jedis.getbit("bit", 99));System.out.println(jedis.getbit("bit", 100));jedis.setbit("bit", 102, true);System.out.println(jedis.getbit("bit",100));System.out.println(jedis.getbit("bit",101));System.out.println(jedis.getbit("bit",102));jedis.close();}}
转载于:https://my.oschina.net/viakiba/blog/1525288
java使用jeids实现redis2.6的String操作(1)相关推荐
- java使用jeids实现redis2.6的list操作(4)
2019独角兽企业重金招聘Python工程师标准>>> 代码: https://github.com/viakiba/redis import org.junit.Test;impo ...
- java akiba,java使用jeids实现redis2.6的脚本执行
代码: https://github.com/viakiba/redis import static org.junit.Assert.*; import java.util.ArrayList; i ...
- java使用jeids实现redis2.6的HyperLogLog数据结构的操作
2019独角兽企业重金招聘Python工程师标准>>> 代码: https://github.com/viakiba/redis 主要是: PFADD/PFCOUNT/PFMERGE ...
- SCALA Linux安装:JAVA.LANG.NUMBERFORMATEXCEPTION: FOR INPUT FOR INPUT STRING: “0X100“
SCALA安装:JAVA.LANG.NUMBERFORMATEXCEPTION: FOR INPUT FOR INPUT STRING: "0X100" 问题描述 Linux终端输 ...
- Java StringBuffer insert(int offset,String s)方法,带示例
StringBuffer类insert(int offset,String s) (StringBuffer Class insert(int offset , String s)) This met ...
- java字符串怎么拼接字符串_Java中String使用+ 拼接字符串的原理是什么?
来看一段代码 public class Test { String str1 = "51"; String str2 = "manong"; String st ...
- 【Java】字符串String操作
Java中的字符采用Unicode编码.Java SE提供了三个字符串类:String,StringBuffer,StringBuilder.String是不可变字符串,StringBuffer和St ...
- Java中List和数组Array和String之间的相互转换
Java中List和数组Array和String之间的相互转换 之前面试的时候遇到一个问题,先给大家分享一下.问:我想分别得到list,string和数组的长度,我能通过什么代码来得到? 这个问题先留 ...
- Java常用类库(Object类、String类、StringBuffer类、包装类、Math类、System类)详解
常用类库 java.lang java.lang包下放置了Java开发中常用的类和接口,所以为简化该包下类的使用,java.lang包下的类在使用时不需要导入这些类 java.lang包下常用类有: ...
最新文章
- mongodb 安装时错误
- 使用Vim+Ctags+Cscope阅读源代码
- java输出gc_GC输出澄清
- MSMQ消息队列演示程序
- 最近学习的 Node.js 之 http
- angularjs ngRoute的使用简单例子
- Boost:宏BOOST_TEST_CSTR_EQ的使用实例
- pip通过阿里源安装
- 你的公司内卷化了吗?
- 记事本和textarea中的换行
- 网络协议之http和tcp思维导图
- Eclipse更改默认工作目录的方法
- 回溯法 —— 求解子集和问题
- 通过电脑从Ovi商店下载软件并安装
- 代写python代码一般多少钱_代写代码一般多少钱(专业解读)
- 学习计算机网络感想,计算机网络学习心得体会
- Unity 2D横版闯关游戏 (JUNGLE RULES)
- 热血传奇之周星弛[转载]【出处:未知】
- 如何将PDF格式转换成Excel格式?
- nvs node版本管理