1.引入相关jar
springboot整合redis相关依赖引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2.相关配置文件配置
redis:
database: 0
# redis 地址这是云的
host: xxx.xxx.xx.xx
#连接端口号
port: 6379
#连接超时时间
timeout: 5000
jedis:
pool:
max-idle: 10 #最大连接数
min-idle: 10 #最小连接数
max-active: 200 #实例数
max-wait: 36000 #最大可用连接超时时间
3.写redis 的工具类
@Component
public class RedisBase{
@Autowired
private StringRedisTemplate stringRedisTemplate;
@Autowired
private RedisTemplate redisTemplate;
public static synchronized Boolean connect(){
return true;
}
/*
* 检查Key是否存在
* */
public Boolean checkKey(String key){
boolean check = stringRedisTemplate.hasKey(key);
return check;
}
/*
* 存入string
* */
public boolean setString(String key ,String value){
try{
stringRedisTemplate.opsForValue().set(key,value);
}catch (Exception e){
e.printStackTrace();
}finally {
}
return true;
}
/*
* 存入list
* */
public <T> boolean setList(String key , List<T> list){
try{
redisTemplate.opsForList().rightPush(key,list);
}catch (Exception e){
e.printStackTrace();
}finally {
}
return true;
}
/*
* 存入map
* */
public boolean setmap(String key , Map<Object,Object> map){
try{
redisTemplate.opsForHash().putAll(key,map);
}catch (Exception e){
e.printStackTrace();
}finally {
}
return true;
}
/*
* 根据key取值
* */
public Object get(String key){
String value = stringRedisTemplate.opsForValue().get(key).toString();
return value;
}
/*
* 根据key删除缓存
* */
private boolean delete(String key){
boolean delete = stringRedisTemplate.delete(key);
return delete;
}
这里我引入了两个redis 的处理类
其实这StringRedisTemplate 是继承 RedisTemplate 的 只是StringRedisTemplate 只处理String 类型的 所以是混合使用的
这里其实还有一点点的问题我使用RedisTemplate 存的list 和 has 的被序列化无法识别了 ,这涉及到序列化的格式了
JdkSerializationRedisSerializer 这种的方式 ,具体后面研究好了再来写。
本文详细介绍了如何在Spring Boot项目中整合Redis,包括引入依赖、配置文件设置、编写工具类等关键步骤。同时,探讨了在使用RedisTemplate和StringRedisTemplate进行数据操作时可能遇到的序列化问题。
1823

被折叠的 条评论
为什么被折叠?



