一.redis安装
1.下载 http://download.redis.io/releases/redis-6.0.6.tar.gz
2. 拷贝到自定义目录,解压:
tar zxvf redis-6.0.6.tar.gz
3.进入解压后的目录执行make命令进行编译
4.编译后出现src目录,进入后,执行make install ,执行陈宫后,会在/usr/local/bin下看到redis-server文件
5.拷贝redis.conf(解压后的源码文件夹里有) 到redis-server同级目录,
执行 redis-server ./redis.conf 启动redis
(如果想后台启动,就更改redis.conf 中的daemonize no → yes)
6.执行客户端命令 redis-cli
[root@neux-db bin]# redis-cli 127.0.0.1:6379> set test 123 OK 127.0.0.1:6379> get test "123" 127.0.0.1:6379>
7.更改redis.conf中的 bind 127.0.0.1 → bind 127.0.0.1空格10.10.101.36(局域网ip) ,更改后重启,不仅本机可以用,局域网其他机器就可以访问了
8.另外,可以设置redis的访问密码:
初次不设置密码后,用redis-cli登录后,进行以下命令
查看密码 config get requirepass
设置密码 config set requirepass 12345678
取消密码 config set requirepass ''
设置密码后,登录命令用redis-cli -a 123456
二.springboot连接redis
1.pom中增加
org.springframework.boot spring-boot-starter-data-redis-reactive
2.yaml配置文件中增加:
spring:
redis:
host: redis所在局域网ip
port: 6379
password: 12345678
3.
package com.example.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@Service
public class RedisServiceImpl implements IRedisService {
@Autowired
private StringRedisTemplate stringRedisTemplate;
@Autowired
private RedisTemplate redisTemplate;
@Override
public void setValue(String key, Map value) {
ValueOperations vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
}
@Override
public Object getValue(String key) {
ValueOperations vo = redisTemplate.opsForValue();
return vo.get(key);
}
@Override
public void setValue(String key, String value) {
ValueOperations vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
}
@Override
public void setValue(String key, Object value) {
ValueOperations vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
}
@Override
public Object getMapValue(String key) {
ValueOperations vo = redisTemplate.opsForValue();
return vo.get(key);
}
}



