[Error] Redis data 값 큰따옴표가 같이 입력되는 문제

개발자 P군·2024년 6월 20일
0
  • 문제 발생

    현재 진행중인 개인 프로젝트에서 redis를 이용한 토큰 저장을 하는 로직이 있는데 토큰을 저장 후 redis-cli에서 해당 값을 확인 해봤더니 토큰 값 앞, 뒤에 큰따옴표가 추가적으로 입력되고 있었다.
    큰따옴표가 같이 들어가면 토큰 값이 제대로 됐는지 확인하는 작업에서 정확한 확인이 불가능 하기 때문에 해당 문제 원인을 찾아봤다.
  • 원인

    원인을 확인해본 결과 스프링에서 redis를 사용하기 위해서 redis 관련 설정을 위해 config파일을 작성하게 되는데,
    this.valueSerializer = StringRedisSerializer() 이 부분을 추가 해주지 않아서 redis의 값을 입력할 때 입력이 제대로 되지 않아서 발생한 문제였다.
  • 해결방법

@Configuration
@EnableRedisRepositories
class RedisConfig(
    @Value("\${spring.redis.host}")
    private val host: String,
    @Value("\${spring.redis.port}")
    private val port: Int
) {

    @Bean
    fun redisConnectionFactory(): RedisConnectionFactory {
        return LettuceConnectionFactory(host, port);
    }

    @Bean
    fun redisTemplate(): RedisTemplate<*, *> {
        return RedisTemplate<Any, Any>().apply {
            this.connectionFactory = redisConnectionFactory()

            this.keySerializer = StringRedisSerializer()
            this.hashKeySerializer = StringRedisSerializer()
            this.valueSerializer = StringRedisSerializer()
        }
    }
}
profile
꾸준한 발전을 지향하는 개발자

0개의 댓글