【Redis】Redis 的常见客户端汇总

目录

一、命令行客户端

二、图形界面的客户端

三、Java 客户端

3.1 SpringDataRedis

3.2 Jedis

3.2.1 连接池的配置

3.3 Lettuce

3.3.1 RedisTemplate 工具类实现

3.3.2 自定义序列化器

3.3.3 StringRedisTemplate

3.3.4 集群配置

3.3.4.1 刷新节点集群拓扑动态感应

四、RedisService 的封装


一、命令行客户端

【Redis】Redis 的常见客户端汇总_第1张图片

  • h :指定要连接的 Redis 服务器的 IP 。

  • p :指定要连接的 Redis 的端口号。

二、图形界面的客户端

1. Redis Desktop Manager

官网为:https://resp.app/原来是 http://redisdesktop.com )。

2. RedisPlus

RedisPlus是为 Redis 可视化管理开发的一款开源免费的桌面客户端软件,支持 Windows 、Linux 、 Mac 三大系统平台, RedisPlus 提供更加高效、方便、快捷的使用体验,有着更加现代化的用户界面风格。RedisPlus的官网地址为 https://gitee.com/MaxBill/RedisPlus 。

3. Java 代码客户端

所谓Java 代码客户端就是一套操作 Redis 的 API ,其作用就像 JDBC 一样,所以 Java 代码客户端其实就是一个或多个 Jar 包,提供了对 Redis 的操作接口。

三、Java 客户端

3.1 SpringDataRedis

Spring Data Redis 是 Spring 框架提供的 数据访问抽象层,用于简化 Redis 在 Spring 应用中的使用。它不直接实现 Redis 通信,而是 整合 Jedis、Lettuce 等客户端,提供统一的 API 和更高级的功能,使开发者无需关心底层通信细节。



    org.springframework.boot
    spring-boot-starter-data-redis

3.2 Jedis

1. 添加依赖

 
    redis.clients
    jedis
    3.7.0

2.  创建项目并建立连接

 
private Jedis jedis;

 @BeforeEach
 void setUp() {
    // 建立连接
    jedis = new Jedis("192.168.150.101", 6379);
    // 设置密码
    jedis.auth("123321");
    // 选择库
    jedis.select(0);
 }

3. 代码实现

 @Test
 void testString() {
    // 插入数据,方法名称就是redis命令名称,非常简单
    String result = jedis.set("name", "张三");
    System.out.println("result = " + result); 
    // 获取数据
    String name = jedis.get("name");
    System.out.println("name = " + name);
 }

 4. 释放资源

@AfterEach
 void tearDown() {
    // 释放资源
    if (jedis != null) {
        jedis.close();
    }
 }

3.2.1 连接池的配置

Jedis 本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此我们推荐大家使用Jedis连接池代替 Jedis 的直连方式。

 public class JedisConnectionFactory {
    private static final JedisPool jedisPool;

    static {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        // 最大连接
        jedisPoolConfig.setMaxTotal(8);
        // 最大空闲连接
        jedisPoolConfig.setMaxIdle(8); 
        // 最小空闲连接
        jedisPoolConfig.setMinIdle(0);
        // 设置最长等待时间, ms
        jedisPoolConfig.setMaxWaitMillis(200);
        jedisPool = new JedisPool(jedisPoolConfig, "192.168.150.101", 6379,
                1000, "123321");
    }
    // 获取Jedis对象
    public static Jedis getJedis(){
        return jedisPool.getResource();
    }
 }

3.3 Lettuce

Lettuce是一个 Redis 的 Java 驱动包,Lettuce 翻译为生菜,没错,就是吃的那种生菜,所以它的 Logo 长这样:

你可能感兴趣的:(Redis,redis,github,数据库)