资讯专栏INFORMATION COLUMN

springboot 整合redis

Forelax / 2915人阅读

摘要:配置文件数据库索引默认为服务器地址服务器连接端口服务器连接密码默认为空连接池最大连接数使用负值表示没有限制连接池最大阻塞等待时间使用负值表示没有限制连接池中的最大空闲连接连接池中的最小空闲连接连接超时时间毫秒工具类让该方法能够支持

配置文件
spring:
  redis:
    # Redis数据库索引(默认为0)
    database: 0
    # Redis服务器地址
    host: 192.168.133.128
    # Redis服务器连接端口
    port: 6379
    # Redis服务器连接密码(默认为空)
    password: redis
    jedis:
      pool:
        # 连接池最大连接数(使用负值表示没有限制)
        max-active: 8
        # 连接池最大阻塞等待时间(使用负值表示没有限制)
        max-wait: -1
        # 连接池中的最大空闲连接
        max-idle: 8
        # 连接池中的最小空闲连接
        min-idle: 0
        # 连接超时时间(毫秒)
        timeout: 10000
redis工具类
@Component
public class RedisUtils {
    @Autowired
    private StringRedisTemplate stringRedisTemplate;

    public void set(String key, Object object, Long time) {
        // 让该方法能够支持多种数据类型存放
        if (object instanceof String) {
            setString(key, object);
        }
        // 如果存放时Set类型
        if (object instanceof Set) {
            setSet(key, object);
        }
        // 设置有效期
        if (time != null) {
            stringRedisTemplate.expire(key, time, TimeUnit.SECONDS);
        }

    }

    public void setString(String key, Object object) {
        String value = (String) object;
        // 存放string类型
        stringRedisTemplate.opsForValue().set(key, value);
    }

    public void setSet(String key, Object object) {
        Set valueSet = (Set) object;
        for (String string : valueSet) {
            stringRedisTemplate.opsForSet().add(key, string);
        }
    }

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

}
测试
@RestController
public class RedisController {
    @Autowired
    private RedisUtils redisUtils;

    @GetMapping("test-set-string")
    public String testSetString(String key, String value) {
        redisUtils.set(key, value,60L);
        return "success set string";
    }

    @GetMapping("test-get-string")
    public String testGetString(String key) {
        return redisUtils.getString(key);
    }
}

代码:springboot-redis

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74131.html

相关文章

  • SpringBoot非官方教程 | 第九篇: SpringBoot整合Redis

    摘要:经过上述两步的操作,你可以访问数据了。数据访问层通过来访问分钟过期单元测试启动单元测试,你发现控制台打印了单元测试通过源码下载参考资料 这篇文章主要介绍springboot整合redis 引入依赖 在pom文件中添加redis依赖: org.springframework.boot spring-boot-starter-data-redis 配置数据源 spri...

    csRyan 评论0 收藏0
  • 两年了,我写了这些干货!

    摘要:开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章系列处理登录请求前后端分离一使用完美处理权限问题前后端分离二使用完美处理权限问题前后端分离三中密码加盐与中异常统一处理 开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章! Spring Boo...

    huayeluoliuhen 评论0 收藏0
  • springboot系列】springboot整合独立模块 redis 做缓存

    摘要:至此,已完成整合独立模块做缓存详情请看地址相关文章系列整合独立模块 项目github地址:https://github.com/5-Ason/aso...具体可看 ./db/db-redis 和 ./db/db-cache 两个模块 // TODO 在整合redis之前需要先本地配置好redis环境,迟点有时间补一下linux下下载安装配置redis 本文主要实现的是对数据操作进行独立...

    qianfeng 评论0 收藏0
  • springboot系列】springboot整合独立模块 redis 做缓存

    摘要:至此,已完成整合独立模块做缓存详情请看地址相关文章系列整合独立模块 项目github地址:https://github.com/5-Ason/aso...具体可看 ./db/db-redis 和 ./db/db-cache 两个模块 // TODO 在整合redis之前需要先本地配置好redis环境,迟点有时间补一下linux下下载安装配置redis 本文主要实现的是对数据操作进行独立...

    Jokcy 评论0 收藏0

发表评论

0条评论

Forelax

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<