Springboot连接Redis

前言

随着数据量的日益增长,很多时候如果直接用SELECT * FROM XXX这些SQL语句来对上千万的数据进行查询,那耗费的时间可想而知。

作为用户一方,肯定希望系统响应越快越好,没什么人喜欢点一个按钮要等到吃完一顿饭回来还没能够响应成功,何况像我这些急性子的人,哈哈!

对Redis不了解的同学,可以自己先去查阅一下,网上有很多关于这方面的说法,我这里就不做阐述了。

开始

引入依赖

在pom.xml中添加以下代码:

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

不过,在idea创建Springboot项目的时候,可以勾选Redis,这样就不用自己引入依赖了,如下图:
在这里插入图片描述
然后在application.properties中添加以下配置信息:

spring.redis.host=     ## redis所在的服务器IP
spring.redis.port=6379 ## 端口
spring.redis.password= ##密码,我这里没有设置,所以不填
spring.redis.pool.max-active=8 ## 设置最大连接数,0为无限
编写代码

IRedisServie.java:

public interface IRedisService {

    // 加入元素
    void setValue(String key, Map<String, Object> value);
    // 加入元素
    void setValue(String key, String value);
    // 加入元素
    void setValue(String key, Object value);
    // 获取元素
    Object getMapValue(String key);
    // 获取元素
    Object getValue(String key);
}

RedisServiceImpl.java:

@Service
public class RedisServiceImpl implements IRedisService {
    @Autowired
    private StringRedisTemplate stringRedisTemplate;
    @Autowired
    private RedisTemplate redisTemplate;


    @Override
    public void setValue(String key, Map<String, Object> value) {
        ValueOperations<String, Object> vo = redisTemplate.opsForValue();
        vo.set(key, value);
        redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
    }

    @Override
    public Object getValue(String key) {
        ValueOperations<String, String> vo = redisTemplate.opsForValue();
        return vo.get(key);
    }

    @Override
    public void setValue(String key, String value) {
        ValueOperations<String, Object> vo = redisTemplate.opsForValue();
        vo.set(key, value);
        redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
    }

    @Override
    public void setValue(String key, Object value) {
        ValueOperations<String, Object> vo = redisTemplate.opsForValue();
        vo.set(key, value);
        redisTemplate.expire(key, 1, TimeUnit.HOURS); // 这里指的是1小时后失效
    }

    @Override
    public Object getMapValue(String key) {
        ValueOperations<String, String> vo = redisTemplate.opsForValue();
        return vo.get(key);
    }
}

到这里核心代码基本完成。

结尾

Redis的用法很多样,我这里的可能是比较基本的,因此还是需要多阅读一下文档。

  • 5
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值