当前位置: 首页 > news >正文

java连接redis服务器

直接从 Redis 获取数据通常是 Redis通过 客户端库实现的,Jedis 是 Java 中一个常用的 Redis 客户端库。有以下两种主要方式:
1. 使用单个 Jedis 实例(不使用连接池)
import redis.clients.jedis.Jedis;

public class RedisExample {
    public static void main(String[] args) {
        // 连接到本地 Redis 服务器
        Jedis jedis = newedis J("localhost", 6379);

        try {
            // 获取数据
            String value = jedis.get("key");
            System.out.println("Value from Redis: " + value);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 关闭连接
            jedis.close();
        }
    }
}

2. 使用 Jedis 连接池(推荐)
import redis.j.clientsedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class RedisExample {
    public static void main(String[] args) {
        // 配置连接池
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        poolConfig.setMaxTotal(100);
        poolConfig.setMaxIdle(50);
        poolConfig.setMinIdle(10);
        poolConfigWait.setMaxMillis(3000);

        // 创建连接池
        JedisPool jedisPool = new JedisPool(poolConfig, "localhost", 6379);

        try (Jedis jedis = jedisPool.getResource()) {
            // 获取数据
            String value = jedis.get("key");
            System.out.println("Value from Redis: " + value);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //闭 关连接池(通常在应用程序结束时)
            jedisPool.close();
        }
    }
}

注意事项
•  连接池管理:使用连接池是推荐的方式,因为它提供了更好的性能和资源管理。确保在使用完连接后正确地将连接归还给连接池(在示例中通过 try-with-resources 自动完成)。
•  空闲连接检测:定期检查和清理空闲连接,以避免连接泄漏。
•  异步操作:对于高并发场景,可以考虑使用异步操作以提高性能。

相关文章:

  • vue 优化策略,大白话版本
  • Spring Security 的 CSRF 防护机制
  • [Android]导航栏中插入电源菜单
  • 【深度学习新浪潮】ISP芯片算法技术简介及关键技术分析
  • 强化学习之基于无模型的算法之蒙特卡洛方法
  • 【题解-Acwing】871. 约数之和
  • LeetCode 2962.统计最大元素出现至少 K 次的子数组:滑动窗口
  • QT控件 参考Qt的PIMPL设计模式实现使用QWidget控件绘制3D饼状图表和3D柱状图表,使用QChartView绘制圆柱体图表
  • 论文导读 - 基于特征融合的电子鼻多任务深度学习模型研究
  • 从 0 到 1:ComfyUI AI 工作流抠图构建全实践
  • Redis核心与底层实现场景题深度解析
  • C++函数模板基础
  • A2A与MCP:理解它们的区别以及何时使用
  • 机器学习实操 第一部分 机器学习基础 第5章 支持向量机(SVM)
  • 【行业特化篇3】制造业简历优化指南:技术参数与标准化流程的关键词植入艺术
  • 【Linux】第十三章 访问Linux文件系统
  • 【和春笋一起学C++】函数——C++的编程模块
  • 第十六届蓝桥杯 2025 C/C++组 旗帜
  • 蓝桥杯 10. 凯撒加密
  • Pytest中的fixture装饰器详解
  • 大型长读长RNA测序数据集发布,有助制定精准诊疗策略
  • “光荣之城”2025上海红色文化季启动,红色主题市集亮相
  • 从腰缠万贯到债台高筑、官司缠身:尼泊尔保皇新星即将陨落?
  • 牛市早报|国家发改委:将推出做好稳就业稳经济推动高质量发展若干举措
  • 三位成功女性,如何应对失败
  • 国家发改委答澎湃:将指导限购城市针对长期摇号家庭和无车家庭等重点群体定向增发购车指标