jedis 读写分离_读写分离的java redis 接口

本文介绍了如何在Spring Boot应用中实现Redis的读写分离。通过定义功能性接口、只读和读写接口,以及使用注解和配置,实现根据不同的bean名称(如'.r'为只读,'.w'为读写)自动注入相应的Redis服务。
摘要由CSDN通过智能技术生成

目的:为了spring上下文添加读写分离的接口,可以在启动后自动注入redis只读接口或可读写接口

1. 定义一个相关的functional interface - 在spring boot的启动类里面要用到(@EnableDynamicKeyValueServiceCreation)

@Retention(value = RetentionPolicy.RUNTIME)

@Import(KeyValueServiceRegister.class)

public @interface EnableDynamicKeyValueServiceCreation {

}

2. 定义只读接口和可读写接口

public interface KeyValueReadService { String get(String key); ...}

public interface KeyValueReadWriteService extends KeyValueReadService { void set(String key, String value); ..}

3. 实现类

public class RedisConfigInfo {

private String hostName;

private int port;

private String password;

private JedisPoolConfig poolConfig;

}

public abstract class AbstractRedisOperation {

private final JedisPool jedisPool;

public AbstractRedisOperation (RedisConfigInfo info) { jedisPool = ...;}

}

public class RedisReadServiceImpl extends AbstractRedisOperation implements KeyValueReadService {

public RedisReadServiceImpl(RedisConfigInfo temp) {

super(temp);

}

@Override

public String get(String key) {

return stringValueOps.get(key);

}

}

4. 通过spring去获取redis的配置信息

@Component

public class KeyValueServi

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值