摘要:本文主要向大家介绍了SQLServer数据库之NoSQL数据库之-------Redis(二),通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。
本文主要向大家介绍了SQLServer数据库之NoSQL数据库之-------Redis(二),通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
下面将会给出实例:
1.Java操作Redis键(key)
package com.redis1;import java.util.List;import redis.clients.jedis.Jedis;/** * Redis keys实例 * @author dell * */public class RedisKeys { public static void main(String[] args) { //连接redis本地服务 Jedis jedis = new Jedis(""127.0.0.1""); System.out.println(""redis本地服务连接成功!""); /*Redis Bgsave 命令用于在后台异步保存当前数据库的数据到磁盘。 BGSAVE 命令执行之后立即返回 OK ,然后 Redis fork 出一个新子进程, 原来的 Redis 进程(父进程)继续处理客户端请求,而子进程则负责将数据保存到磁盘,然后退出。 */ System.out.println(jedis.bgsave()); //Redis Echo 命令用于打印给定的字符串。 System.out.println(jedis.echo(""redis"")); //Redis Flushall 命令用于清空整个 Redis 服务器的数据(删除所有数据库的所有 key )。 System.out.println(jedis.flushAll()); //Redis Flushdb 命令用于清空当前数据库中的所有 key。 System.out.println(jedis.flushDB()); /* Redis Ping 命令使用客户端向 Redis 服务器发送一个 PING ,如果服务器运作正常的话,会返回一个 PONG 。 通常用于测试与服务器的连接是否仍然生效,或者用于测量延迟值。 */ System.out.println(jedis.ping()); //Redis Info 命令以一种易于理解和阅读的格式,返回关于 Redis 服务器的各种信息和统计数值。 System.out.println(""\ninfo----->""+jedis.info()); //Redis RANDOMKEY 命令从当前数据库中随机返回一个 key 。 System.out.println(jedis.randomKey()); //Redis Save 命令执行一个同步保存操作,将当前 Redis 实例的所有数据快照(snapshot)以 RDB 文件的形式保存到硬盘。 System.out.println(jedis.save()); //Redis Unwatch 命令用于取消 WATCH 命令对所有 key 的监视。 System.out.println(jedis.unwatch()); /* Redis Multi 命令用于标记一个事务块的开始。 事务块内的多条命令会按照先后顺序被放进一个队列当中,最后由 EXEC 命令原子性(atomic)地执行。 */ System.out.println(jedis.multi()); /*Redis Quit 命令用于关闭与当前客户端与redis服务的连接。 一旦所有等待中的回复(如果有的话)顺利写入到客户端,连接就会被关闭。*/ System.out.println(jedis.quit()); }}
2.Java操作Redis列表(list)
package com.redis1;import java.util.List;import redis.clients.jedis.BinaryClient;import redis.clients.jedis.Jedis;/** * redis list数据类型 * * @author dell * */public class RedisList { public static void main(String[] args) { // 连接本地的 Redis 服务 Jedis jedis = new Jedis(""localhost""); System.out.println(""redis本地服务连接成功!""); /* * lpush 表示从list的头部插入元素 rpush 表示从list的尾部插入元素 linsert 在列表的某个元素前或者后插入元素 * index 表示列表中index位置的元素 llen 返回列表的长度 lpop list 0 -1 * 表示从mylist列表的头部开始删除所有元素 rpop list 0 -1 表示从mylist列表的尾部开始删除所有元素 lrange * list 0 -1 //使用lrange取出元素 0表示从头部第一个元素,-1表示从尾部第一个元素取出,lrange mylist 0 * -1 表示取出mylist中的所有数据 */ // 存储数据到列表中 jedis.lpush(""SQL"", ""Redis""); jedis.lpush(""SQL"", ""Mongodb""); jedis.lpush(""SQL"", ""Mysql""); jedis.linsert(""SQL"", BinaryClient.LIST_POSITION.BEFORE, ""MySql"", ""java""); jedis.rpush(""SQL"", ""SqlServer""); jedis.rpush(""SQL"", ""Oracle""); jedis.linsert(""SQL"", BinaryClient.LIST_POSITION.BEFORE, ""MySql"", ""java""); // Redis Lpushx 将一个或多个值插入到已存在的列表头部,列表不存在时操作无效。 System.out.println(jedis.lpushx(""SQL"", ""Redis1"")); // 获取存储的数据并输出 List<String> list = jedis.lrange(""SQL"", 0, -1); for (int i = 0; i < list.size(); i++) { System.out.println(""Stored string in redis:: "" + list.get(i)); } // 获得列表的长度 System.out.println(""redis列表长度为:"" + jedis.llen(""SQL"")); // 删除列表中的元素 jedis.del(""SQL""); System.out.println(""删除了redis列表!""); // 获得列表的长度 System.out.println(""redis列表长度为:"" + jedis.llen(""SQL"")); // 列表下标从0开始 System.out.println(""redis列表下标为5的元素是:"" + jedis.lindex(""SQL"", 5)); /* * Redis Ltrim 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。 下标 0 * 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 * 表示列表的倒数第二个元素,以此类推。 */ System.out.println(jedis.ltrim(""SQL"", 0, 4)); }}
3.Java操作Redis集合(set)
package com.redis1;import java.util.Set;import redis.clients.jedis.Jedis;/** * Redis set数据类型 * @author dell * */public class RedisSet { public static void main(String[] args) { Jedis jedis = new Jedis(""127.0.0.1"",6379); //set方法用于向redis数据库中添加设置数据 jedis.set(""k1"", ""v1""); jedis.set(""k2"", ""v2""); jedis.set(""k3"", ""v3""); //get方法用于获取某个键所对应的值 System.out.println(jedis.get(""k3"")); //del方法用于删除某个键所对应的值 System.out.println(jedis.del(""k1"")); //getSet方法用户获取某个键所对应的值,键不存在,返回null;键存在,返回对应的值 System.out.println(jedis.getSet(""k4"", ""v4"")); /*getrange(key, startOffset, endOffset)方法用于获取存在在key中字符串的子字符串 字符串的截取范围由start和end两个偏移量决定 */ System.out.println(jedis.getrange(""k2"", 1, -1)); //lpop方法用于移除并返回列表的第一个元素 System.out.println(jedis.lpop(""k1"")); //rpop方法用于移除并返回列表的最后一个元素 System.out.println(jedis.rpop(""k5"")); //返回集合的长度 Set<String> sets = jedis.keys(""*""); System.out.println(sets.size()); }}
4.Java操作Redis字符串(String)
package com.redis1;import redis.clients.jedis.Jedis;/** * Redis String数据类型 * @author dell * */public class RedisString { public static void main(String[] args) { //连接本地redis服务 Jedis jedis = new Jedis(""127.0.0.1""); System.out.println(""redis服务连接成功!""); //设置redis字符串数据 jedis.set(""type"", ""string""); //获取存储的数据并输出 System.out.println(""redis存储的值为:""+jedis.get(""type"")); }}
5.Java 操作Redis排序
package com.redis2;import org.junit.Before;import org.junit.Test;import redis.clients.jedis.Jedis;/**
* Redis排序
* @author dell
*
*/public class Java_RedisTest { private Jedis jedis; @Before public void setup(){ //连接redis服务器
jedis = new Jedis(""127.0.0.1"",6379); //权限认证 //jedis.auth(""admin""); } @Test public void test() throws InterruptedException{ //jedis排序 //注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的)
jedis.del(""a""); //先清除数据,在加入数据进行测试
jedis.rpush(""a"", ""1"");
jedis.rpush(""a"", ""6"");
jedis.rpush(""a"", ""4"");
jedis.rpush(""a"", <span"
本文由职坐标整理并发布,希望对同学们学习SQL Server有所帮助,更多内容请关注职坐标数据库SQL Server数据库频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号