Cacheable key값 설정에서 null
@Cacheable(cacheNames = "getBoards", key = "'boards:page:' + #page + ':size:' + #size", cacheManager = "boardCacheManager")
public List<Board> getBoards(int page, int size) {
Pageable pageable = PageRequest.of(page - 1, size);
Page<Board> pageOfBoards = boardRepository.findAllByOrderByCreatedAtDesc(pageable);
return pageOfBoards.getContent();
}
}여기서 key = "'boards:page:' + #page + ':size:' + #size"
레디스에 저장되는 키값은 "getBoards::boards:page:null:size:null" 이렇게 저장이 됩니다. 혹시 null이 들어가는 이유가 있을까요? page와 size의 데이터도 잘 넘어오고 레디스에서 저 키값으로 조회를 하면 안에 데이터는 잘 들어가 있습니다. #page와 #size가 null인 이유가 있을까요?
답변 2
0
안녕하세요 mok님!!
작동하지 않는 코드 혹시 Github에 올려서 공유 한 번 해주실 수 있을까요~??
디버깅해보고 어떤 게 문제인지 파악되면 답변 드릴 수 있도록 할게요:D
0
안녕하세요 mok님!
올려주신 프로젝트를 활용해서 테스트해봤는데
아래와 같이 정상적으로 저장이 되는 걸로 확인됩니다!

혹시 다시 한 번 테스트해보시고
역시나 안 되신다면 아래 오픈 톡방으로 카톡 한 번만 남겨주세요~~
0
안녕하세요, 인프런 AI 인턴입니다. mok님,
Cacheable key 값 설정 시 null이 들어가는 문제에 대해 궁금해하셨군요. 일부 다른 수강생들도 유사한 문제를 겪었으며, 이에 대한 답변을 드리도록 하겠습니다.
아래는 유사한 질문과 그에 대한 답변 링크입니다:
1. CacheManager 설정 관련 질문
이 질문에서는 CacheManager를 설정하는 방법에 대한 논의가 있으며, 캐시 설정을 통해 키값의 구조를 어떻게 변경할 수 있는지에 대한 힌트를 얻을 수 있습니다.
2. RDS 관련 이슈
이 질문에서는 Hibernate 설정 문제와 관련한 설명이 포함되어 있으며, 이는 캐시 키값 설정에도 적용될 수 있는 부분이 있습니다. 캐시의 설정이나 키값 생성에서의 문제를 해결하는 데 도움이 될 것입니다.
추가 팁:
- 메소드의 파라미터가 제대로 전달되지 않아 캐시 키값에 null이 들어가는 경우가 있으므로 @Cacheable 어노테이션의 key 속성에서 사용하는 SpEL 표현식이 올바르게 지정되었는지 확인하세요.
- 메소드에 전달되는 파라미터인 page와 size가 실제로 null인지 디버깅을 통해 확인해 보세요.
- Spring Expression Language (SpEL)를 사용할 때 파라미터명이 정확히 적용되었는지 확인하세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
redis VS valkey
0
200
2
스프링 부트에 Redis 적용하기 질문
0
97
2
redis 적용을 위한 service 반환값
0
62
2
redis 사용으로 인한 비용
0
240
2
Redis를 적용했음에도 불구하고 조회 성능의 큰 차이가 없고 오히려 더 안좋은 조회속도를 보이는 것 같습니다.
0
144
3
Elastic Cache 에러
0
85
2
Elastic
0
74
2
AWS 리소스 삭제에 관하여
0
74
2
ec2안에서 pull 받는 이유가 뭔가요 ?
0
83
2
Nest.js + Redis 구현 문제
0
677
3
데이터를 안가져와요
0
72
2
Spring Boot 프로젝트에 Redis 셋팅 추가하기에서 13분 질문있습니다.
0
188
2
레디스 환경 셋팅 질문있습니다.
0
99
2
엘라스틱 서치와 레디스의 차이점을 알고 싶습니다.
0
262
2
-parameters
0
128
2
Redis vs Memcached
0
230
2
redis 를 compose 로 묶어준 이유가 궁금합니다.
0
155
2
k6의 결과 해석
0
257
2
Jackson2JsonRedisSerializer에 대한 궁금증
0
233
1
사용된 어노테이션에 관한 질문
0
146
1
Redis 사용 방식에 대해서 질문 있습니다
0
154
1
aws elasticcache redis 툴 접속.
0
219
1
Redis를 사용하는 이유
0
709
2
로컬에서 docker compose 명령어 실행 시
0
275
2





