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对象时,手动完成完成对象的序列化和反序列化

相关推荐
.Hypocritical.1 分钟前
【SpringBoot】配置文件加载位置与优先级详解
java·spring boot·后端
JAVA面经实录91741 分钟前
RabbitMQ 完整面试题答案
java·rabbitmq·java-rabbitmq
xcl09257 小时前
商超智能运营实战:数据驱动提升门店效率与体验指南
java·mfc·宠物
Flynt9 小时前
OpenJDK禁AI代码半年了,现在执行得怎么样?答案是:全靠自觉
java·开源·ai编程
古法安卓14 小时前
Android-日志系统源码解析
android·java·android studio
小夏coding16 小时前
从"一把梭"到"精妙拆解" —— 滑动窗口计时框架的设计演进
java·后端
MacroZheng17 小时前
同事问我:"Claude Code经常失忆,不怕它把项目搞炸?",我:"怕,三个Markdown文件给它装个永不丢失的外置大脑!"
java·人工智能·后端
十年Java程序媛18 小时前
深度实战:JDK21 虚拟线程 + HikariCP 生产正确配比、坑点、监控全套
java·spring boot
xiaoqiMikko18 小时前
有人在搜一个不存在的 Tomcat 版本
java·tomcat
用户3126874877201 天前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java