Redis安装配置及在Spring中的使用

Redis简介

REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

官网:https://redis.io/

安装Redis

首先在官网下载地址找到最新版本的安装包地址,如:http://download.redis.io/releases/redis-6.0.6.tar.gz

  • 下载安装Redis
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
tar xzf redis-6.0.6.tar.gz
cd redis-6.0.6
make
  • 配置Redis
vim redis.conf

将“requirepass”的注释放开,然后设置一个连接密码。否则远程连接的时候报:

(error) DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients. In this mode connections are only accepted from the loopback interface. 

在这里插入图片描述

  • 启动Redis服务
./src/redis-server

在这里插入图片描述

  • 启动Redis客户端,验证连接
./src/redis-cli

127.0.0.1:6379> ping
PONG

在Spring中使用Redis

  • maven引包
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
        </dependency>
  • 配置RedisConnectionFactory
    @Bean
    public RedisConnectionFactory redisConnectionFactory() {
        RedisStandaloneConfiguration configuration = new RedisStandaloneConfiguration("your_redis_server_ip_addr", 6379);
        configuration.setPassword(RedisPassword.of("your_pass"));
        return new JedisConnectionFactory(configuration);
    }
  • 配置RedisTemplate
    @Bean
    public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
        RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(redisConnectionFactory);

        return redisTemplate;
    }
  • Redis读写
    【注】配置RedisConnectionFactory之后,就可以用如下的方式设置值和读取值。但是这种方式只支持字节数组。RedisTemplate可以简化Redis数组访问
        RedisConnection redisConnection = redisConnectionFactory.getConnection();
        redisConnection.set("key".getBytes(),"value".getBytes());
        String value = new String(Objects.requireNonNull(redisConnection.get("key".getBytes())));

RedisTemplate Redis数组访问:

        redisTemplate.opsForValue().set("template", "string template");
        redisTemplate.opsForValue().get("template");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值