赞
踩
Redis的话,这东西其实说难很难,说简单也简单,想深入了解的话是比较难的,但是想用起来的话还算简单。
如果是Redis 集群的话,还要考虑很多问题。
今天讲一下 单机版 Redis
Redis 其实就是:高性能键值对数据库
1、字符串类型
2、列表类型
3、游戏集合类型
4、散列类型
5、集合类型
1、缓存(最广泛)
数据查询、新闻商品的内容,放在缓存中。聊天室的在线好友列表
2、网站访问统计
3、任务队列
秒杀、抢购
4、数据过期处理
5、应用排行榜
6、分布式集群架构中的session的分离
Windows 环境下:https://github.com/MSOpenTech/redis/releases
Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘,解压后,将文件夹重新命名为 redis。
打开文件,内容如下:
打开一个 cmd 窗口 使用 cd 命令切换目录到 C:\redis 运行:
redis-server.exe redis.windows.conf
如果想方便的话,可以把 redis 的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的。输入之后,会显示如下界面:
这时候另启一个 cmd 窗口,原来的不要关闭,不然就无法访问服务端了。
切换到 redis 目录下运行:
redis-cli.exe -h 127.0.0.1 -p 6379
项目中加入 redis依赖:
- <properties>
- <redis.util.version>0.0.3</redis.util.version>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>com.cmcc.iot.redistool</groupId>
- <artifactId>redis-util</artifactId>
- <version>${redis.util.version}</version>
- </dependency>
- <!-- jedis -->
- <dependency>
- <groupId>redis.clients</groupId>
- <artifactId>jedis</artifactId>
- <version>${jedis.version}</version>
- </dependency>
- </dependencies>

连接到 Redis 服务:
- import redis.clients.jedis.Jedis;
-
- public class RedisJava {
- public static void main(String[] args) {
- //连接本地的 Redis 服务
- Jedis jedis = new Jedis("localhost");
- System.out.println("连接成功");
- //查看服务是否运行
- System.out.println("服务正在运行: " + jedis.ping());
- }
- }
执行结果:
- 连接成功
- 服务正在运行: PONG
a)Redis 储存String 类型数据:
- import redis.clients.jedis.Jedis;
-
- public class RedisStringJava {
- public static void main(String[] args) {
- //连接本地的 Redis 服务
- Jedis jedis = new Jedis("localhost");
- System.out.println("连接成功");
- //设置 redis 字符串数据
- jedis.set("website", "https://blog.csdn.net/qq_39415129");
- // 获取存储的数据并输出
- System.out.println("redis 存储的字符串为: "+ jedis.get("website"));
- }
- }
执行结果:
- 连接成功
- redis 存储的字符串为: https://blog.csdn.net/qq_39415129
b)Redis 储存 List 类型数据:
- import java.util.List;
- import redis.clients.jedis.Jedis;
-
- public class RedisListJava {
- public static void main(String[] args) {
- //连接本地的 Redis 服务
- Jedis jedis = new Jedis("localhost");
- System.out.println("连接成功");
- //存储数据到列表中
- jedis.lpush("site-list", "Runoob");
- jedis.lpush("site-list", "Google");
- jedis.lpush("site-list", "Taobao");
- // 获取存储的数据并输出
- List<String> list = jedis.lrange("site-list", 0 ,2);
- for(int i = 0; i < list.size(); i++) {
- System.out.println("列表项为: " + list.get(i));
- }
- }
- }

执行结果:
- 连接成功
- 列表项为: Taobao
- 列表项为: Google
- 列表项为: Runoob
c)Redis 储存 Keys:
- import java.util.Iterator;
- import java.util.Set;
- import redis.clients.jedis.Jedis;
-
- public class RedisKeyJava {
- public static void main(String[] args) {
- //连接本地的 Redis 服务
- Jedis jedis = new Jedis("localhost");
- System.out.println("连接成功");
-
- // 获取数据并输出
- Set<String> keys = jedis.keys("*");
- Iterator<String> it = keys.iterator() ;
- while(it.hasNext()){
- String key = it.next();
- System.out.println(key);
- }
- }
- }

执行结果:
- 连接成功
- runoobkey
- site-list
思路清晰点:redis 其实就是一个用来存储 key-value 等形式的数据的数据库。
对于后面需要用到的数据进行存储到 Redis 中,要用的时候直接去获取。
当然目前推荐使用的是 Jedis ,因为 Jedis 是 Redis 的 Java 客户端。可以通过 Jedis 对 Redis 进行操作。
JedisPool 连接池也可以极大的用于项目中,实现缓存数据读取的高效率。
我是进阶的球儿,大家一起2019年的爬坑历程。感觉分享很给力的话给个赞,谢谢!!!有问题也可以下方留言沟通。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。