sql >> Database teknologi >  >> NoSQL >> Redis

Hvordan autowired RedisTemplate

Stacktrace antyder, at du ikke har defineret bønnen, som du gerne vil bruge til at injicere i RedisTemplate .Du kan løse det ved at oprette en konfigurationsfil, f.eks.

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericToStringSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

@Configuration
public class AppConfig {
 @Bean
 JedisConnectionFactory jedisConnectionFactory() {
  return new JedisConnectionFactory();
 }

 @Bean
 RedisTemplate< String, Long > redisTemplate() {
  final RedisTemplate< String, Long > template =  new RedisTemplate< String, Long >();
  template.setConnectionFactory( jedisConnectionFactory() );
  template.setKeySerializer( new StringRedisSerializer() );
  template.setHashValueSerializer( new GenericToStringSerializer< Long >( Long.class ) );
  template.setValueSerializer( new GenericToStringSerializer< Long >( Long.class ) );
  return template;
 }
}

Når du har konfigurationsfilen, skal du sende den til SpringApplication.run F.eks.

Object[] sources = {AppConfig.class};
ApplicationContext ctx = SpringApplication.run(sources, args);


  1. Go:Opret io.Writer-interface til logning til mongodb-databasen

  2. Hvordan genoptager man hash-slots for en bestemt node i redis-klyngen i tilfælde af hårde fejl?

  3. ConnectionMultiplexer.Forbindelsen afbrydes, mens der oprettes forbindelse til redis-serveren

  4. Multipel brug af positionsoperatoren `$` til at opdatere indlejrede arrays