Java链接redis

ops/2025/3/13 15:22:34/

一、准备工作就像谈恋爱

首先咱们得来点仪式感是不是?打开你的Maven(Gradle玩家别打我),把这两个宝贝依赖给我焊死在pom.xml里:

<!-- 经典永不过时的Jedis -->

<dependency>

<groupId>redis.clients</groupId>

<artifactId>jedis</artifactId>

<version>4.4.3</version>

</dependency>

<!-- 新贵Lettuce,异步猛如虎 -->

<dependency>

<groupId>io.lettuce</groupId>

<artifactId>lettuce-core</artifactId>

<version>6.3.0.RELEASE</version>

</dependency>

选Jedis还是Lettuce?这就好比选机械键盘的青轴红轴,Jedis直来直去像东北老铁,Lettuce异步操作像上海精英。我全都要.jpg


🚀二、连接实战比奶茶简单

方案A:直男式连接(Jedis极简版)

java">public class Redis直男 {public static void main(String[] args) {// 这三个参数就像wifi密码,错一个都别想连Jedis jedis = new Jedis("localhost", 6379);jedis.auth("你的密码"); // 没密码?心真大!jedis.set("雷总语录", "站在风口上,猪都能飞起来");System.out.println(jedis.get("雷总语录")); // 打印出来都是情怀jedis.close(); // 用完不关?等着内存泄漏吧!}
}

方案B:优雅永不过时(Lettuce高定版)

 
java">public class Redis绅士 {public static void main(String[] args) {RedisURI uri = RedisURI.Builder.redis("localhost").withPort(6379).withAuthentication("default", "你的密码").build();RedisClient client = RedisClient.create(uri);StatefulRedisConnection<String, String> connection = client.connect();RedisCommands<String, String> commands = connection.sync();commands.set("互联网思维", "专注、极致、口碑、快");System.out.println(commands.get("互联网思维"));connection.close(); // 优雅关闭才是王道client.shutdown();}
}

💊三、连接池是程序员的续命丹

知道为什么你头发越来越少吗?每次new连接就像拆一次性筷子!上连接池才是正解:

java">JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.setMaxTotal(20); // 最大连接数,别让你的Redis像早高峰地铁
poolConfig.setMaxIdle(10);  // 最大摸鱼连接数try (JedisPool pool = new JedisPool(poolConfig, "localhost", 6379, 2000, "密码")) {Jedis jedis = pool.getResource();// 一顿操作猛如虎...
} // 自动回收连接,妈妈再也不用担心我忘关连接了


🚨四、避坑指南(血泪史)

  1. Timeout异常三连击

    1. 检查防火墙姿势

    2. 确认6379端口开了没

    3. 网络延迟超过connectionTimeout值?

  1. AUTH错误终极奥义

     

    // 密码里有特殊符号?上双引号护体! jedis.auth("\"your@pass!\"");

    1. 内存爆炸现场教学Redis配置必须加maxmemory 256mb(别让Redis变成貔貅)

    1. 连接泄漏灵魂拷问推荐使用try-with-resources,比健忘症特效药管用


    ⚡五、性能三连(敲黑板!)

    • Pipeline技术:比双十一快递还快的批量操作

       
    java">Pipeline pipeline = jedis.pipelined();
    for(int i=0; i<10000; i++){pipeline.set("key"+i, "value"+i);
    }
    pipeline.sync();

    • 集群模式生存指南

      • 单机模式:RedisTemplate

      • 集群模式:JedisCluster


    💡最后说点掏心窝子的

    代码这东西,光看不动手都是耍流氓!赶紧打开IDE,把Redis玩出花来。遇到问题别慌,记住雷总那句话:"**试错的成本并不高,而错过的成本非常高!**"

    (突然正经)对了,用SpringBoot的童鞋可以直接上Spring Data Redis,配置自动注入美滋滋。但底层原理还是这些,万变不离其宗!


    🎉彩蛋:当年我用Redis存了10个G的缓存结果没设过期时间...这事我能笑(哭)三年!朋友们引以为戒啊!

    文章来源:https://blog.csdn.net/wang543203/article/details/146121845
    本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/ops/165442.html

    相关文章

    pdf修改内容:分享5款好用的工具

    pdf修改内容用什么软件&#xff1f;PDF内容修改工具的便捷性很大地提升了我们的工作效率。通过这些工具&#xff0c;我们可以轻松地对PDF文档进行文字编辑、图片替换、页面调整等操作&#xff0c;无需繁琐的转换步骤。这些修改工具不仅操作简便&#xff0c;而且功能强大&#x…

    通义万相 2.1 + 蓝耘算力,AI 视频生成的梦幻组合

    在这个科技日新月异的时代&#xff0c;人工智能不断刷新着我们对世界的认知。一次偶然的机会&#xff0c;我借助北京蓝耘科技股份有限公司提供的算力支持&#xff0c;踏上了使用通义万相 2.1 进行 AI 视频生成的奇妙之旅。 目录 1.1初遇蓝耘科技&#xff1a; 1.2通义万相 2.1…

    C++ 布尔类型(bool)深度解析

    引言 在 C 编程里&#xff0c;布尔类型&#xff08;bool&#xff09;是一种基础且极为关键的数据类型。它专门用于表达逻辑值&#xff0c;在程序的条件判断、循环控制等诸多方面都发挥着重要作用。接下来&#xff0c;我们将对 C 中的布尔类型展开全面且深入的探讨。 一、布尔…

    通用人工智能(AGI):定义、挑战与未来展望

    文章目录 引言AGI的定义与特征实现AGI的挑战AGI与ASI的区别AGI的潜在影响结语 引言 通用人工智能&#xff08;Artificial General Intelligence, AGI&#xff09;是人工智能领域的终极目标&#xff0c;代表着一种能够执行人类所有智力任务的系统。与当前的任务导向型人工智能&…

    [算法] 判断是否为字符串重排(simple, 面试)

    文章目录 1. 题意2. 思路3. 编码 好的, 今天我们又是崭新的一天呐, 我们来分享一道很简单的题目 -> 判断是否为字符串重排 因为是简单 面试题的组合, 我们来一步一步走~ 力扣有个题解写的不错, 在这里分享一下: 力扣题解链接 1. 题意 给定两个由小写字母组成的字符串 s1…

    DeepSeek API 客户端使用文档

    1. 简介 deep.py 是一个用于与 DeepSeek API 交互的 Python 客户端封装。它提供了简单易用的接口&#xff0c;支持对话历史管理、日志记录等功能&#xff0c;使得与 DeepSeek API 的交互更加便捷和可靠。 2. 功能特点 简单的接口设计自动管理对话历史完整的日志记录灵活的配…

    jmeter:登录接口的token用于下一个接口

    问题&#xff1a; 仅仅登录接口可以使用&#xff0c;其他接口进行测试的时候都是报错&#xff1a;账号已经失效 原因&#xff1a; 应该是登录接口的token并没有用到下一个接口上来 解决方法 1、目录建设如下&#xff1a; 2、先添加一个后置处理器&#xff1a;查看结果数&…

    MySQL——基础知识

    目录 一、为什么选择数据库而非文件存储&#xff1f; 二、主流数据库简介 三、MySQL安装与连接 1. 安装方式 2. 连接服务器 四、核心操作实战 1. 数据库与表管理 2. 数据逻辑存储示例 五、MySQL架构解析 六、SQL分类与存储引擎 1. SQL分类 2. 存储引擎对比 七、学…