Java redis入门
来源:互联网 发布:ppt拆分合并软件 编辑:程序博客网 时间:2024/05/17 03:07
Redis 简介
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
• Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
• Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
• Redis支持数据的备份,即master-slave模式的数据备份。
Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
Redis字符串(String)
用于管理字符串,基本的命令 set key value get key
Redis哈希(hash)
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
Redis列表(List)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素列表的头部(左边)或者尾部(右边)。
Redis集合(Set)
Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
Redis有序集合(sorted set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
Redis发布订阅
Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。
Redis事务
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
• 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
• 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
一个事务从开始到执行会经历以下三个阶段:
• 开始事务。
• 命令入队。
• 执行事务。
Java连接redis实例
连接redis服务
import redis.clients.jedis.Jedis;public class RedisJava { public static void main(String[] args) { //连接本地的 Redis 服务 Jedis jedis = new Jedis("localhost"); System.out.println("Connection to server sucessfully"); //查看服务是否运行 System.out.println("Server is running: "+jedis.ping()); }}
Redis字符串实例
import redis.clients.jedis.Jedis;public class RedisStringJava { public static void main(String[] args) { //连接本地的 Redis 服务 Jedis jedis = new Jedis("localhost"); System.out.println("Connection to server sucessfully"); //设置 redis 字符串数据 jedis.set("runoobkey", "Redis tutorial"); // 获取存储的数据并输出 System.out.println("Stored string in redis:: "+ jedis.get("runoobkey")); }}
Redis list实例
import redis.clients.jedis.Jedis;public class RedisListJava { public static void main(String[] args) { //连接本地的 Redis 服务 Jedis jedis = new Jedis("localhost"); System.out.println("Connection to server sucessfully"); //存储数据到列表中 jedis.lpush("tutorial-list", "Redis"); jedis.lpush("tutorial-list", "Mongodb"); jedis.lpush("tutorial-list", "Mysql"); // 获取存储的数据并输出 List<String> list = jedis.lrange("tutorial-list", 0 ,5); for(int i=0; i<list.size(); i++) { System.out.println("Stored string in redis:: "+list.get(i)); } }}
Redis keys实例
import redis.clients.jedis.Jedis;public class RedisKeyJava { public static void main(String[] args) { //连接本地的 Redis 服务 Jedis jedis = new Jedis("localhost"); System.out.println("Connection to server sucessfully"); // 获取数据并输出 List<String> list = jedis.keys("*"); for(int i=0; i<list.size(); i++) { System.out.println("List of stored keys:: "+list.get(i)); } }}
- Java使用Redis入门
- Java redis入门
- Java 使用 Redis入门
- redis入门(java)
- java redis 入门
- redis入门-java测试
- redis基础、java集成Redis入门
- Redis的Java入门实践 .
- Redis的Java入门实践
- Redis的Java入门实践
- Redis的Java入门实践
- Redis java入门之一:安装
- redis入门及java操作
- java 实现 redis 入门demo
- Redis的入门Demo(java)
- Redis入门与Java用Jedis操作Redis实例
- Java中使用Jedis操作Redis—Redis快速入门
- Redis入门到精通-Redis与Java的应用
- 2016.11.23-2016.11.25回顾
- JVM之偏向锁应用及性能分析
- Android SDK Android NDK Android Studio 官方下载地址
- yii2 用gii生成CRUD页面
- lua5.1 到 5.3的一些经常会接触到的改动
- Java redis入门
- 关于文件没有关闭的问题
- FAST-RCNN makefile.config 参考配置
- 简单实现 angular1.x 双向数据绑定
- Android Fragment嵌套导致的bug
- strtok函数
- TreeSet实现自定义类的有序输出
- C#中static
- 在MFC中利用 sqlite3数据库和bat 生成日志