温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Springboot redis整合配置的方法

发布时间:2022-03-29 14:07:38 来源:亿速云 阅读:168 作者:iii 栏目:大数据

本文小编为大家详细介绍“Springboot redis整合配置的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Springboot redis整合配置的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

1、redis安装

本文采用docker去安装redis,如果直接本地安装也很方便,直接下载好安装包然后cmd窗口命令行启动就行。

  1. 拉取镜像

 Docker pull redis:4.0
  1. 启动镜像

  Docker run -itd --name redis-01 -p 6379:6379 #镜像id
  1. 放行端口

firewall-cmd --state #查看防火墙状态
    
    systemctl start firewalld.service #启动防火墙
    
    firewall-cmd --zone=public --add-port=6379/tcp --permanent #放行端口
    
    system restart firewalld.service #重启防火墙
    
    firewall-cmd --reload #重新载入配置
    
    firewall-cmd --list-all #查看已开放的端口

2、Spring boot引入

2.1、引入maven依赖

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

<dependency>
 <groupId>com.fasterxml.jackson.core</groupId>
 <artifactId>jackson-databind</artifactId>
</dependency>

此处引入的是官方的starter,以往大家使用jedis,可以更具个人想法改变。

2.2、基础配置

spring.redis.host=192.168.1.37
#Redis服务器连接端口
spring.redis.port=6379
#Redis服务器连接密码(默认为空)
spring.redis.password=
#连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=8
#连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1
#连接池中的最大空闲连接
spring.redis.pool.max-idle=8
#连接池中的最小空闲连接
spring.redis.pool.min-idle=0
#连接超时时间(毫秒)
spring.redis.timeout=30000

具体详细配置根据个人需求更改。实际上springboot有默认配置,可以直接不进行配置也可以使用。

2.3、RedisService

package com.ssk.shop.bll;

/**
 * redis操作接口
 */
public interface IRedisBll {

 /**
 * 存储数据
 */
 void set(String key, String value);

 /**
 * 获取数据
 */
 String get(String key);

 /**
 * 设置超期时间
 */
 boolean expire(String key, long expire);

 /**
 * 删除数据
 */
 void remove(String key);

 /**
 * 自增操作
 * @param delta 自增步长
 */
 Long increment(String key, long delta);

}

impl

package com.ssk.shop.bll.impl;

import com.ssk.shop.bll.IRedisBll;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.concurrent.TimeUnit;

@Service
public class IRedisBllImpl implements IRedisBll {

 @Resource
 private StringRedisTemplate stringRedisTemplate;

 @Override
 public void set(String key, String value) {
 stringRedisTemplate.opsForValue().set(key, value);
 }

 @Override
 public String get(String key) {
 return stringRedisTemplate.opsForValue().get(key);
 }

 @Override
 public boolean expire(String key, long expire) {
 return stringRedisTemplate.expire(key, expire, TimeUnit.SECONDS);
 }

 @Override
 public void remove(String key) {
 stringRedisTemplate.delete(key);
 }

 @Override
 public Long increment(String key, long delta) {
 return stringRedisTemplate.opsForValue().increment(key,delta);
 }
}

可以对一些基础的方法进行封装,让平常一些操作更方便的去实现。

总结:redis是一个很好的缓存处理方案,项目总可以用户缓存一些常用到的信息,减轻对数据库的访问压力,对于一些秒杀方案也是可选的方案,目前为止项目中将一些权限以及对token用redis进行唯一登录控制(单token生效)。

读到这里,这篇“Springboot redis整合配置的方法”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI