redis基础(java客户端)

java客户端

jedis:学习成本低,但是线程不安全

lettuce:支持同步、异步、响应式编程,线程安全,支持redis哨兵模式,集群模式和管道模式

redisson:基于redis实现高级功能

jedis

java 复制代码
public class jedisPoolFactory {
    private static JedisPool jedisPool;
    static {
        //配置连接池
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxIdle(8);
        jedisPoolConfig.setMinIdle(0);
        jedisPoolConfig.setMaxTotal(8);
        jedisPoolConfig.setMaxWaitMillis(1000);

        //创建连接池对象
        jedisPool =new JedisPool(jedisPoolConfig,"192.168.160.154",6379,1000,"123321");
    }
    public static Jedis getJedis(){
        return jedisPool.getResource();
    }
}
java 复制代码
class RedisJavaCliApplicationTests {

    private Jedis jedis;


    @BeforeEach
    public void before(){
        jedis=jedisPoolFactory.getJedis();
    }

    @Test
    public void Test(){
        String result=jedis.set("djw","sb");
        System.out.println(result);
        System.out.println(jedis.get("djw"));
    }

    @AfterEach
    public void after(){
        if(jedis!=null)
            jedis.close();
    }
}

spring data redis

提供了RedisTemplate工具类,其中封装了各种对redis的操作。并且将不同数据类型的操作API封装到不同的类型中:

API 返回值类型 value类型
redisTemplate.opsForValue() ValueOperations String
redisTemplate.opsForHash() HashOperations Hash
redisTemplate.opsForList() ListOperations List
redisTemplate.opsForSet() SetOperations Set
redisTemplate.opsForZSet() ZSetOperations SortedSet
redisTemplate 通用命令

传入的value值是Object类型,会自动进行序列化和反序列化

StringRedisTemplate

为了节省内存空间,当存储java对象时,手动完成完成对象的序列化和反序列化

相关推荐
Joy T39 分钟前
Agent 确定性上下文设计:从 Prompt 参数注入到能力分层
java·开发语言·微服务·架构·prompt·agent context
m0_587383004 小时前
广州 24 小时自助健身房解决方案技术实现与实战指南
java·spring·小程序·架构·需求分析
·云扬·4 小时前
Prompt 工程与安全:从 System 设计到注入防御
java·人工智能·安全·ai·prompt
代码不停5 小时前
自动化测试(java)
java·开发语言·selenium·自动化
行百里er5 小时前
Redis 完结篇——Redis 热点问题在 Spring Boot 项目中实战
redis·后端
鬼手点金7 小时前
opencode-rules 插件
java·开发语言·前端·人工智能·chrome·git·github
paopaokaka_luck8 小时前
滑雪场管理系统(AI智能助手流式对话,ECharts 运营数据分析、教练、雪具与场地一体化预约,钱包支付退款、订单核销与服务评价)
java·人工智能·spring boot·网络协议·数据分析·echarts
Wang's Blog8 小时前
Java 项目实战: 交友项目 - Dubbo 的内部结构与一次调用的完整链路
java·dubbo
Wang's Blog8 小时前
Java 项目实战: 交友项目 - Dubbo 入门引导
java·dubbo·交友
蜗牛互联网9 小时前
Python Agent工具调用的白名单、参数校验与审批门禁
java·服务器·前端·人工智能·后端·python