要使用Spring Boot的CodisTemplate,需要在配置文件中设置以下属性:

  1. 添加CodisTemplate的依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

<dependency>
    <groupId>com.codahale.metrics</groupId>
    <artifactId>metrics-core</artifactId>
</dependency>
  1. 在application.properties文件中添加Codis的配置:
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.database=0
spring.redis.password=
spring.redis.pool.max-active=8
spring.redis.pool.max-idle=8
spring.redis.pool.min-idle=0
spring.redis.pool.max-wait=-1
  1. 创建CodisTemplate的配置类:
@Configuration
public class CodisTemplateConfig {

    @Value("${spring.redis.host}")
    private String host;

    @Value("${spring.redis.port}")
    private int port;

    @Value("${spring.redis.password}")
   private String password;

    @Value("${spring.redis.database}")
    private int database;

    @Value("${spring.redis.pool.max-active}")
    private int maxActive;

    @Value("${spring.redis.pool.max-idle}")
    private int maxIdle;

    @Value("${spring.redis.pool.min-idle}")
    private int minIdle;

    @Value("${spring.redis.pool.max-wait}")
    private int maxWait;

    @Bean
    public JedisPoolConfig jedisPoolConfig() {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxTotal(maxActive);
        jedisPoolConfig.setMaxIdle(maxIdle);
        jedisPoolConfig.setMinIdle(minIdle);
        jedisPoolConfig.setMaxWaitMillis(maxWait);
        return jedisPoolConfig;
    }

    @Bean
    public JedisConnectionFactory jedisConnectionFactory(JedisPoolConfig jedisPoolConfig) {
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
        jedisConnectionFactory.setHostName(host);
        jedisConnectionFactory.setPort(port);
        jedisConnectionFactory.setPassword(password);
        jedisConnectionFactory.setDatabase(database);
        jedisConnectionFactory.setPoolConfig(jedisPoolConfig);
        jedisConnectionFactory.setUsePool(true);
        jedisConnectionFactory.afterPropertiesSet();
        return jedisConnectionFactory;
    }

    @Bean
    public CodisTemplate codisTemplate(JedisConnectionFactory jedisConnectionFactory) {
        CodisTemplate codisTemplate = new CodisTemplate();
        codisTemplate.setConnectionFactory(jedisConnectionFactory);
        codisTemplate.afterPropertiesSet();
        return codisTemplate;
    }
}
  1. 在需要使用CodisTemplate的地方注入CodisTemplate,并使用它进行Redis操作:
@Autowired
private CodisTemplate codisTemplate;

public void doSomething() {
    codisTemplate.opsForValue().set("key", "value");
    String value = codisTemplate.opsForValue().get("key");
    System.out.println(value);
}

这样就可以通过CodisTemplate来操作Codis集群中的数据了。

SpringBoot CodisTemplate 设置配置实现

原文地址: https://www.cveoy.top/t/topic/i7c1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录