<!--redis数据库-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--spring2.0集成redis所需common-pool2-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.4.2</version>
</dependency>
?redis 部共有16个数据库,但经常默认会使用2,也可以改用其想用的库,数据库编号可以是1-16,即从1开始到16。
redis:
host: 127.0.0.1
password: xxxxxxx
port: 6379
jedis:
pool:
max-active: 8
max-wait: -1ms
max-idle: 8
min-idle: 0
database: 2
如图:?
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*;
import java.util.concurrent.TimeUnit;
@Service
public class RedisServiceImpl {
引入
@Autowired
StringRedisTemplate stringRedisTemplate;
}
//常用的保存
stringRedisTemplate.opsForValue().set(key, value);
//保存时间
stringRedisTemplate.opsForValue().set(key, value, second, TimeUnit.SECONDS);
?超时保存用得最频繁的就是登陆的token保存,超时保存支持时间TimeUnit单位如下图:
//常用的获取
stringRedisTemplate.opsForValue().get(key);
//模糊查找 t_chargePoleRelationGun:* 开头的
Set<String> keys = stringRedisTemplate.keys("t_chargePoleRelationGun:*");
List<ChargePoleRelationGun> list = new ArrayList<>(keys.size());
for (String key : keys) {
String storedValue = stringRedisTemplate.opsForValue().get(key);
ChargePoleRelationGun value = JSONObject.parseObject(storedValue, ChargePoleRelationGun.class);
list.add(value);
}
//模糊查找批量获取
Set<String> keys = stringRedisTemplate.keys("t_chargePoleRelationGun:*");
if (keys.isEmpty()) {
return Collections.emptyList();
}
List<String> keyList = new ArrayList<>(keys);
List<String> values = stringRedisTemplate.opsForValue().multiGet(keyList);
批量获取multiGet 效率会比单个按key获取值更加高效。
本着免费开源好用的的思想,这里选择Another Redis Desktop Manager。
Another Redis Desktop Manager小巧,更快,更好,更稳定,而且兼容Linux,Windows,Mac。
项目开源地址:https://github.com/qishibo/AnotherRedisDesktopManager
?下载地址:https://github.com/qishibo/AnotherRedisDesktopManager/releases
关于redis的 key如果采用冒号时在客户端具有分类的美观的效果:
yum install redis
redis-cli -h 127.0.0.1 -p 6379
? ?默认配置文件路径:/etc/redis.conf
vi /etc/redis.conf
? ? 配置远程ip访问,默认是本地访问,可以配置指定ip访问,注释时不限ip访问。 默认端口是6379,也可以改成其它端口。
?默认不需密码访问,这里配置密码12345678
# 启动
systemctl start redis
# 停止
systemctl stop redis
# 查看状态
systemctl status redis
# 重启
systemctl restart redis