Я совершил ужасную ошибку с Spring Data Redis. Когда я выполняю рефакторинг своего кода и перемещаю @RedisHash
классы в другой пакет, Spring Data не может найти @RedisHash
, которые уже присутствуют в базе данных.
- Есть ли простой способ исправить это?
- Теперь я знаю о
template.setKeySerializer();
и template.setHashKeySerializer();
Как мне установить их, чтобы я мог реорганизовать (переименовать или переместить в другой пакет) мои @RedisHash
-аннотированные классы?
Это конфигурация, которую я использую.
@Configuration
public class RedisConfiguration {
@Bean
JedisConnectionFactory jedisConnectionFactory() {
RedisStandaloneConfiguration config = new RedisStandaloneConfiguration();
config.setHostName("127.0.0.1");
config.setPort(6379);
return new JedisConnectionFactory(config);
}
@Bean
public RedisTemplate<String, Object> redisTemplate() {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(jedisConnectionFactory());
return template;
}
}
и один образец моих @RedisHash
'*
@Data
@RedisHash("StringKV")
public class StringKV implements Serializable {
private String id;
private String value;
}