sql >> Databasteknik >  >> NoSQL >> Redis

Hur autowired RedisTemplate

Stacktrace antyder att du inte har definierat bönan som du vill använda för att injicera i RedisTemplate .Du kan lösa det genom att skapa en konfigurationsfil, t.ex.

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 måste du skicka den till SpringApplication.run T.ex.

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


  1. ServiceStack:Återställa pipeline när du anropar en tjänst manuellt?

  2. MongoDB $strLenBytes

  3. Validerar det unika hos ett inbäddat dokument som omfattas av dess förälder i mongoose

  4. Mongodb samlar sortering och gräns inom gruppen