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)相关推荐

  1. java使用jeids实现redis2.6的list操作(4)

    2019独角兽企业重金招聘Python工程师标准>>> 代码: https://github.com/viakiba/redis import org.junit.Test;impo ...

  2. java akiba,java使用jeids实现redis2.6的脚本执行

    代码: https://github.com/viakiba/redis import static org.junit.Assert.*; import java.util.ArrayList; i ...

  3. java使用jeids实现redis2.6的HyperLogLog数据结构的操作

    2019独角兽企业重金招聘Python工程师标准>>> 代码: https://github.com/viakiba/redis 主要是: PFADD/PFCOUNT/PFMERGE ...

  4. SCALA Linux安装:JAVA.LANG.NUMBERFORMATEXCEPTION: FOR INPUT FOR INPUT STRING: “0X100“

    SCALA安装:JAVA.LANG.NUMBERFORMATEXCEPTION: FOR INPUT FOR INPUT STRING: "0X100" 问题描述 Linux终端输 ...

  5. Java StringBuffer insert(int offset,String s)方法,带示例

    StringBuffer类insert(int offset,String s) (StringBuffer Class insert(int offset , String s)) This met ...

  6. java字符串怎么拼接字符串_Java中String使用+ 拼接字符串的原理是什么?

    来看一段代码 public class Test { String str1 = "51"; String str2 = "manong"; String st ...

  7. 【Java】字符串String操作

    Java中的字符采用Unicode编码.Java SE提供了三个字符串类:String,StringBuffer,StringBuilder.String是不可变字符串,StringBuffer和St ...

  8. Java中List和数组Array和String之间的相互转换

    Java中List和数组Array和String之间的相互转换 之前面试的时候遇到一个问题,先给大家分享一下.问:我想分别得到list,string和数组的长度,我能通过什么代码来得到? 这个问题先留 ...

  9. Java常用类库(Object类、String类、StringBuffer类、包装类、Math类、System类)详解

    常用类库 java.lang java.lang包下放置了Java开发中常用的类和接口,所以为简化该包下类的使用,java.lang包下的类在使用时不需要导入这些类 java.lang包下常用类有: ...

最新文章

  1. mongodb 安装时错误
  2. 使用Vim+Ctags+Cscope阅读源代码
  3. java输出gc_GC输出澄清
  4. MSMQ消息队列演示程序
  5. 最近学习的 Node.js 之 http
  6. angularjs ngRoute的使用简单例子
  7. Boost:宏BOOST_TEST_CSTR_EQ的使用实例
  8. pip通过阿里源安装
  9. 你的公司内卷化了吗?
  10. 记事本和textarea中的换行
  11. 网络协议之http和tcp思维导图
  12. Eclipse更改默认工作目录的方法
  13. 回溯法 —— 求解子集和问题
  14. 通过电脑从Ovi商店下载软件并安装
  15. 代写python代码一般多少钱_代写代码一般多少钱(专业解读)
  16. 学习计算机网络感想,计算机网络学习心得体会
  17. Unity 2D横版闯关游戏 (JUNGLE RULES)
  18. 热血传奇之周星弛[转载]【出处:未知】
  19. 如何将PDF格式转换成Excel格式?
  20. nvs node版本管理

热门文章

  1. 【FFmpeg】如何通过url的格式找到对应的协议,以rtmp为例
  2. jvm调优工具_JVM性能调优监控工具jps、jstack、jmap、jhat、hprof使用详解
  3. .sh是什么语言_shell的重生历史:从sh到bash
  4. Java项目:控制台商城系统(java+打印控制台)
  5. 实验3  数据库综合查询
  6. ios bug 分析
  7. spring cloud微服务分布式云架构--hystrix的使用
  8. 174. Dungeon Game
  9. python包引用问题
  10. Dotfuscator代码混淆工具的使用