0
点赞
收藏
分享

微信扫一扫

contos7 安装Redis到springboot使用

彪悍的鼹鼠 2022-04-23 阅读 53

为演示方便, 这里使用虚拟机代替服务器

1. 下载Redis

        官网: CRUG网站

2. 上传压缩包(以Xshell为例)

 然后将压缩包拖入其中即可

3. 解压

tar -zxvf 文件名 -C 解压路径

4. 安装

4.1 cd进入目录

cd redis-6.2.1

 4.2 安装c相关

yum -y install gcc-c++ automake autoconf

4.3 编译

make

如果出现以下错误

 只需要执行以下指令即可(不需要再次执行make指令)

make MALLOC-libc

4.4 安装

make PREFIX-安装路径 install

 4.5 添加配置

将压缩包解压出来的redis中的redis.conf文件复制到安装的redis/bin中即可

# 根据自己的路径来
cp redis.conf ../redis/bin

 到这里你的Redis便安装完成了

接下来讲以下基础配置

5. 基础配置

打开复制过来的redis.conf

vim redis.conf

5.1 关闭只允许本机访问

将以下信息注释

 5.2 关闭本机访问模式

将以下信息改为no

 5.3 配置后台启动

将no改为yes

 5.4 设置密码

将如下信息取消注释, 将foobared改为你的密码即可

若不设置密码, 访问redis时便不需要输入密码

 相关配置就介绍这么多, 其他只能各位下去了解了

接下来让我们看看springboot如何使用Redis

6. springboot中应用redis

相关依赖

<!--redis依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--对象池依赖-->
<dependency>
     <groupId>org.apache.commons</groupId>
     <artifactId>commons-pool2</artifactId>
</dependency>

核心配置(以yml文件为例)

spring:
  redis:
#    服务器地址
    host: 192.168.73.140
#    端口,默认6397
    port: 6379
#    数据库,默认是0
    database: 0
#    超时时间
    connect-timeout: 10000ms
#   若没有密码则不加
    password: 123456
#    连接池
    lettuce:
      pool:
#        最大连接数,默认是8
        max-active: 8
#        最大阻塞等待时间
        max-wait: 10000ms
#        最大空闲连接,默认是8
        max-idle: 8
#        最小空闲连接,默认是0
        min-idle: 0

 实现序列化

package com.SecKill.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

/**
 * @Author: 新写的旧代码
 * @Description: Redis配置
 * @CreateTime: 2022/4/11
 */
@Configuration
public class RedisConfig {
    @Bean
    public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory){
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
        // key的序列化
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        // value的序列化
        redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
        // hash类型 key的序列化
        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        // hash类型value的序列化
        redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
        redisTemplate.setConnectionFactory(redisConnectionFactory);
        return redisTemplate;
    }

}

在使用时需要引入资源(泛型根据实际需要选择)

@Autowired
private RedisTemplate<String, String> redisTemplate;

例: 

 

举报

相关推荐

0 条评论