redis的安装及springDataRedis
发送短信功能
短信微服务已经准备好,我们就可以继续编写用户中心接口了。
接口说明
这里的业务逻辑是这样的:
1)我们接收页面发送来的手机号码
2)生成一个随机验证码
3)将验证码保存在服务端
4)发送短信,将验证码发送到用户手机
那么问题来了:验证码保存在哪里呢?
验证码有一定有效期,一般是5分钟,我们可以利用Redis的过期机制来保存。
redis安装和配置
安装
下载安装包课前资料提供的安装包,或者:官网下载建议上传到我们的home下:/usr/local/learn
解压
tar -xvf redis-4.0.9.tar.gz
编译安装
mv redis-4.0.9 rediscd redismake && make install
配置
修改安装目录下的redis.conf文件
vim redis.conf
修改以下配置:
#bind 127.0.0.1 # 将这行代码注释,监听所有的ip地址,外网可以访问
protected-mode no # 把yes改成no,允许外网访问
daemonize yes # 把no改成yes,后台运行
启动或停止
redis提供了服务端命令和客户端命令:
redis-server 服务端命令,可以包含以下参数:start 启动stop 停止
redis-cli 客户端控制台,包含参数:-h xxx 指定服务端地址,缺省值是127.0.0.1-p xxx 指定服务端端口,缺省值是6379
设置开机启动
1) 输入命令,新建文件
vim /etc/init.d/redis
输入下面内容:
#!/bin/sh
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
PATH=/usr/local/bin:/sbin:/usr/bin:/binREDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cliPIDFILE=/var/run/redis.pidCONF="/usr/local/learn/redis/redis.conf"case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis server..." $EXEC $CONF fi if [ "$?"="0" ] then echo "Redis is running..." fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping ..." $REDIS_CLI -p $REDISPORT SHUTDOWN while [ -x ${PIDFILE} ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "Redis stopped" fi ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 exit 1
esac
然后保存退出
注意:以下信息需要根据安装目录进行调整:
EXEC=/usr/local/bin/redis-server # 执行脚本的地址
REDIS_CLI=/usr/local/bin/redis-cli # 客户端执行脚本的地址
PIDFILE=/var/run/redis.pid # 进程id文件地址
CONF="/usr/local/src/redis-3.0.2/redis.conf" #配置文件地址
2)设置权限
chmod 755 /etc/init.d/redis
3)启动测试
/etc/init.d/redis start
启动成功会提示如下信息:
Starting Redis server...
Redis is running...
4)设置开机自启动
chkconfig --add /etc/init.d/redis
chkconfig redis on
Spring Data Redis
官网:http://projects.spring.io/spring-data-redis/
Spring Data Redis,是Spring Data 家族的一部分。 对Jedis客户端进行了封装,与spring进行了整合。可以非常方便的来实现redis的配置和操作。
RedisTemplate基本操作
Spring Data Redis 提供了一个工具类:RedisTemplate。里面封装了对于Redis的五种数据结构的各种操作,包括:
redisTemplate.opsForValue() :操作字符串
redisTemplate.opsForHash() :操作hash
redisTemplate.opsForList():操作list
redisTemplate.opsForSet():操作set
redisTemplate.opsForZSet():操作zset
其它一些通用命令,如expire,可以通过redisTemplate.xx()来直接调用
5种结构:
String:等同于java中的,
Map<String,String>
list:等同于java中的
Map<String,List<String>>
set:等同于java中的
Map<String,Set<String>>
sort_set:可排序的set
hash:等同于java中的:`Map<String,Map<String,String>>
StringRedisTemplate
RedisTemplate在创建时,可以指定其泛型类型:
K:代表key 的数据类型
V: 代表value的数据类型
注意:这里的类型不是Redis中存储的数据类型,而是Java中的数据类型,RedisTemplate会自动将Java类型转为Redis支持的数据类型:字符串、字节、二进制等等。
不过RedisTemplate默认会采用JDK自带的序列化(Serialize)来对对象进行转换。生成的数据十分庞大,因此一般我们都会指定key和value为String类型,这样就由我们自己把对象序列化为json字符串来存储即可。
因为大部分情况下,我们都会使用key和value都为String的RedisTemplate,因此Spring就默认提供了这样一个实现:
测试
需要在项目中引入Redis启动器:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
然后在配置文件中指定Redis地址:
spring:redis:host: 192.168.56.101
redis的安装及springDataRedis相关推荐
- Redis 的安装及企业级应用
01_初识 Reids 1. 认识 NoSQL (非关系型数据库) 关系型数据库与非关系型数据库对比 SQL NoSQL 数据结构 结构化 非结构化 数据关联 关联 无关联 查询方式 SQL 查询 非 ...
- Linux下redis的安装(适用centos)
转自:https://www.cnblogs.com/_popc/p/3684835.html 第一部分:安装redis 希望将redis安装到此目录 1 /usr/local/redis 希望将安 ...
- Redis 入门安装(Linux)
Redis 入门安装(Linux) 备注:该案例讲解基于CentOS6.5.Reids3.2.8 Redis 官网 中文地址:http://www.redis.cn/ 英文地址:https://red ...
- Redis初学:1(NoSQL的简介和Redis的安装)
什么是NoSQL NoSQL数据库意即:Not Only SQL 不仅仅是SQL,它区别于传统的关系型数据库,储存方式按照的是key-value的形式存储数据,这个我们可以联想到我们以前学过的Hash ...
- Linux下redis的安装
原文出处:http://www.cnblogs.com/_popc/p/3684835.html 第一步:redis的安装 希望将redis安装到此目录 1 /usr/local/redis 希望将安 ...
- Redis、Redis+sentinel安装(Ubuntu 14.04下Redis安装及简单测试)
Ubuntu下Redis安装两种安装方式: 1.apt-get方式 步骤: 以root权限登录,切换到/usr目录下. 接下来输入命令,apt-get install redis-server,如图: ...
- redis的安装以及常见运用场景
2019独角兽企业重金招聘Python工程师标准>>> 1.redis的安装 Window 下安装 下载地址:https://github.com/MSOpenTech/redis/ ...
- 浅谈Redis及其安装配置
一.Redis的介绍 二.Redis的安装配置 三.Redis的配置文件说明 四.Redis的简单操作 简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. ...
- linux redis数据库安装配置,Linux系统中redis的安装配置步骤
Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...
最新文章
- 读书笔记——Python第一个程序Hello world
- 回到顶部和返回首页jquery插件
- eclipse——jsp字体设置
- STM32 端口复用与重映射及低功耗引脚配置
- nameof() 到底是编译时还是运行时行为?
- vector的逆序输出(神奇的vector)
- HDU3430-扩展中国剩余定理
- 百万奖池大赛 | 交通事件、医学病理、违法广告检测等,2020首届江苏大数据开发与应用大赛启动...
- java中swing循环_在Java游戏循环中使用“ SwingUtilities.invokeLa...
- nginx 与php版本,nginx-php不同版本问题
- JS 立即执行的函数表达式(function)写法
- Setup Factory 打包工具部分功能代码解
- phpQuery—基于jQuery的PHP实现
- Markdown中在线编辑公式LaTex
- 电商“论贱”血拼 传统书店该何去何从
- 题朋友云南骑马照【明书、圣契】
- Python的大数据之旅(1)---Anaconda与WingIDE安装
- CNN卷积核计算原理
- LCD1602液晶 - 开发技术详解
- UVC(USB Video Class)协议讲解
热门文章
- RedHat静态Ip地址配置
- ZOJ-1654 Place the Robots 拆行拆列构图+二分匹配 Or 最大独立点集+TLE
- WM_USER和WM_APP[转]
- jdk1.8新特性(四)——Optional
- 大话设计模式—观察者模式
- 用API函数播放wav文件声音不连续的解决方法
- Windows中安装Emacs
- 从杂技表演到日剧BGM(r12笔记第23天)
- storm 简介及单机版安装指南
- MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践