SpringBoot 整合redis

1、添加项目依赖

java 复制代码
 <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>

2、单实例连接

java 复制代码
 //Jedis单机测试
    @Test
    public void testJedisSingle() {
        Jedis jedis = new Jedis("127.0.0.1", 6379);
        jedis.set("str", "单机测试Jedis");
        String str = jedis.get("str");
        System.out.println(str);
        jedis.close();
    }

3、使用连接池连接

java 复制代码
 //Jedis连接池测试
    @Test
    public void testJedisPool() {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        //最大连接数
        jedisPoolConfig.setMaxTotal(30);
        //最大连接空闲数
        jedisPoolConfig.setMaxIdle(2);
        JedisPool jedisPool = new JedisPool(jedisPoolConfig, "127.0.0.1", 6379);
        Jedis resourceJedis = jedisPool.getResource();
        resourceJedis.set("str", "Jedis连接池测试");
        String str = resourceJedis.get("str");
        System.out.println(str);
        resourceJedis.close();
    }

4、编写JedisConfig 配置

java 复制代码
package com.yy.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

@Configuration
public class JedisConfig {

    @Value("${spring.redis.host}")
    private String host;

    @Value("${spring.redis.port}")
    private int port;

    @Value("${spring.redis.jedis.pool.max-active}")
    private int maxActive;

    @Value("${spring.redis.jedis.pool.max-idle}")
    private int maxIdle;

    @Value("${spring.redis.jedis.pool.min-idle}")
    private int minIdle;

    @Bean
    public JedisPoolConfig jedisPoolConfig() {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxIdle(maxIdle);
        jedisPoolConfig.setMinIdle(minIdle);
        jedisPoolConfig.setMaxTotal(maxActive);;
        return jedisPoolConfig;
    }

    @Bean
    public JedisPool jedisPool(JedisPoolConfig jedisPoolConfig){
        return new JedisPool(jedisPoolConfig,host,port);
    }

}

5、application.yml 配置文件

java 复制代码
spring:
  redis:
    host: localhost
    port: 6379
    jedis:
      pool:
        max-idle: 6    #最大空闲数
        max-active: 10 #最大连接数
        min-idle: 2    #最小空闲数
相关推荐
碧海蓝天20224 分钟前
C++法则24:在标准 C++ 中,没有任何可移植的方式判断指针 T* pt 指向的内存位置是否已经 构造了对象,程序员必须手动跟踪哪些元素已构造。
java·开发语言·c++
один but you41 分钟前
const和constexpr常量表达式
java·前端·javascript
码云数智-大飞42 分钟前
RAII 与智能指针深度拆解
java·前端·算法
云烟成雨TD1 小时前
Agent Scope Java 2.x 系列【19】Harness:从零搭建 MySQL 文件系统
java·人工智能·agent
qq3621967051 小时前
阿里裁员新消息(2026最新动态汇总)
java·开发语言·前端
a1117761 小时前
“黑夜流星“个人引导页 网页html
java·前端·html
进阶的小名1 小时前
Spring Boot SSE + Nginx 配置:解决 EventSource 不实时返回、连接超时、流式响应被缓冲问题
spring boot·后端·nginx
砚底藏山河1 小时前
沪深A股:如何获取基金持股数据
java·python·数据分析·maven
代码改善世界1 小时前
【C++进阶】C++11:列表初始化、右值引用与移动语义、完美转发全解析
java·开发语言·c++
AIGS0011 小时前
JBoltAI V4.5企业智能体平台:技术架构拆解
java·人工智能·ai大模型应用