redis是什么?

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

为什么使用redis?

● 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。

● 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。

● 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。

● 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

redis使用步骤

准备工作,在本机上安装redis服务器。这里使用Redis-x64-3.2.100 .msi版本,百度云盘地址:
链接:https://pan.baidu.com/s/1BoppoI2VCX-A5jSWyKeWlQ 密码:qqn2
第一步:启动本地的Redis服务;
第二步:连接本地的Redis服务,并且设置值,以便于在java代码中获取。实际上也可以在java代码中设置值,然后获取,为了直观地感受到,这里直接在命令
提示符下设置Redis的值,然后通过设置的key在java中获取设置的value值。
第三步:在java代码中获取Redis中设置的值。

1、启动redis服务

cmd打开命令行,输入如图启动redis:

2、连接本地的Redis服务

3、在java中使用redis

在java用使用redis依赖于jedis-2.9.0.jar包,百度云盘地址:
链接:https://pan.baidu.com/s/1s9eYmFR93DHflJTEk6HjDA 密码:0qqa
目录:

连接redis:RedisJava.java
 1 package cn.redisdemo;
 2
 3 import redis.clients.jedis.Jedis;
 4
 5 public class RedisJava {
 6     /**
 7      * 连接redis服务器
 8      */
 9     public void connection(){
10     // 连接本地的 Redis 服务
11         Jedis jedis = new Jedis("localhost");
12         System.out.println("连接本地的 Redis 服务成功!");
13         // 查看服务是否运行
14         System.out.println("服务 正在运行: " + jedis.ping());
15     }
16 }

测试类:
效果:

redis存取字符串:

连接redis:RedisJava.java(单例)
 1 package cn.redisdemo;
 2
 3 import redis.clients.jedis.Jedis;
 4
 5 public class RedisJava {
 6     private static Jedis jedis = new Jedis("localhost");
 7     private RedisJava(){};
 8     /**
 9      * 连接redis服务器
10      */
11     public static Jedis getConnection(){
12             return jedis;
13     }
14 }

测试类:
 1 package test;
 2
 3 import org.junit.Test;
 4
 5 import redis.clients.jedis.Jedis;
 6 import cn.redisdemo.RedisJava;
 7
 8 public class RedisJavaTest {
 9     @Test
10     public void test() {
11         Jedis jedis = RedisJava.getConnection();
12         //set值
13         jedis.set("str1", "test1");
14         //get值
15         String str1 = jedis.get("str1");
16         //打印测试
17         System.out.println("str1的值:" + str1);
18     }
19 }

效果:

redis存取List集合

 1 @Test
 2 public void testList(){
 3     Jedis jedis = RedisJava.getConnection();
 4     // 存储数据到列表中
 5     jedis.lpush("kecheng", "java");
 6     jedis.lpush("kecheng", "php");
 7     jedis.lpush("kecheng", "Mysql");
 8
 9     // 获取存储的数据并输出//0代表开始下标,-1代表所有,其他大于零数代表结束下标
10     List<String> list = jedis.lrange("kecheng", 0, -1);
11     for (int i = 0; i < list.size(); i++) {
12         System.out.println("redis list里面存储的值是:" + list.get(i));
13     }
14 }

效果:
补充:
//List<String> list = jedis.lrange("kecheng", 0, jedis.llen("kecheng")); //jedis.llen获取长度
//jedis.del("kecheng");//移除该List里的值

菜鸟教程:http://www.runoob.com/redis/redis-commands.html

转载于:https://www.cnblogs.com/daituyong/p/9160382.html

redis入门demo相关推荐

  1. redis入门(三)

    文章目录 @[toc] redis入门(三) 目录 前言 事务 原理 Lua脚本 安装 脚本命令 EVAL EVALSHA lua和redis互操作 SCRIPT EXISTS SCRIPT FLUS ...

  2. 分布式事务框架lcn入门demo

    文章目录 简介 实现原理 入门demo 简介 LCN分布式事务框架其本身并不创建事务,而是基于对本地事务的协调从而达到事务一致性的效果. LCN5.0.2有3种模式,分别是LCN模式,TCC模式,TX ...

  3. Redis入门指南 第1章 简介 Redis的几项特性

    Redis入门指南 第1章 简介 Redis的几项特性 之前在做爬虫相关的demo时接触到了Redis,它基于键值对的存储系统吸引了我.它的操作十分方便,而且性能也高.趁着假期,系统地自学一下Redi ...

  4. Redis入门到实战(一、基础篇)【黑马程序员】

    第一章 Redis入门 Redis的常见命令和客户端使用 一.初识Redis 1. 认识NoSQL NoSql可以翻译做Not Only Sql(不仅仅是SQL),或者是No Sql(非Sql的)数据 ...

  5. NoSql数据库--Redis入门

    Redis入门 1.NoSQL概述[重点了解] 1.1 什么是NoSQL ​ NoSQL(NoSQL=Not Only SQL),意即"不仅仅是SQL"是一项全新的数据库理念,泛指 ...

  6. Redis 入门安装(Linux)

    Redis 入门安装(Linux) 备注:该案例讲解基于CentOS6.5.Reids3.2.8 Redis 官网 中文地址:http://www.redis.cn/ 英文地址:https://red ...

  7. 《Redis入门指南(第2版)》一第2章 准备

    本节书摘来异步社区<Redis入门指南(第2版)>一书中的第2章,作者: 李子骅 责编: 杨海玲,更多章节内容可以访问云栖社区"异步社区"公众号查看. 第2章 准备 R ...

  8. Dubbo入门Demo

    2019独角兽企业重金招聘Python工程师标准>>> 1.Dubbo简单介绍 Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方 ...

  9. 《Redis入门指南(第2版)》一3.2 字符串类型

    本节书摘来异步社区<Redis入门指南(第2版)>一书中的第3章,第3.2节,作者: 李子骅 责编: 杨海玲,更多章节内容可以访问云栖社区"异步社区"公众号查看. 3. ...

最新文章

  1. python爬取新闻后提炼_Python爬虫开发的3大难题,别上了贼船才发现,水有多深...
  2. 王者荣耀活动精选 Blink 第三弹来袭!
  3. 只用CPU开发自动驾驶轮船,他们居然做到了
  4. tdd java_适用于Idea的面向现代TDD的Java 8 JUnit测试模板(带有Mockito和AssertJ)
  5. linux格式化usb设备,如何在 usb linux下格式化磁盘
  6. Linux同步目录 保留文件修改时间和权限 rsync
  7. 《Scikit-Learn与TensorFlow机器学习实用指南》第14章 循环神经网络
  8. PC电脑端QQ如何适应电脑端大小
  9. 物化视图基础概念、mview跨库迁移表
  10. Eclipse在当前行之上插入一行
  11. 怎么把word转换ppt?
  12. 【Java基础】使用NumberFormat 、DecimalFormat进行数字格式化
  13. 浅谈JavaScript设计模式
  14. SpringCloud第十章zuul路由网关
  15. 提高计算机启动速度的是什么,电脑怎么提高开机速度?几个提高开机速度的各项优化...
  16. 【杂记】全栈开发中碰到的一些问题及解决方法
  17. @value值获取不到配置文件值
  18. PS学习及实践用例总结分享
  19. python编程可以用来干嘛,python程序员是干嘛的
  20. 应届毕业生选择国企还是外企好

热门文章

  1. Golang垃圾回收机制(一)
  2. 我的Android进阶之旅------gt;Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题...
  3. 快速了解一门技术的基本步骤
  4. Jmater添加UDP插件
  5. TaskTracker获取并执行map或reduce任务的过程(一)
  6. 如何在开盘15分钟内发现当天黑马
  7. postgresql 客户端_Postgresql体系结构
  8. c# 无法加载oraops.dll_Robotstudio软件二次开发:基于C#语言的Smart组件开发基础
  9. kali-linux虚拟机与主机共享文件
  10. 钉钉宜搭3.0发布!易连接、酷数据、更安全