【发布时间】:2020-02-16 17:30:50
【问题描述】:
我有一个 Spring Boot 应用程序,它实现了 redis 缓存来cahce 方法输出。我的用例是在缓存中调用方法时存储对象列表。我的代码如下所示。
@Cacheable(value="sec-ques-list")
@Override
public List<SecQuestionModel> fetchSecQuestions() {
logger.info("fetchSecQuestions() Starts");
List<SecQuestion> secQuestionsEnty = secQuestionRepository.findAll();
List<SecQuestionModel> secQuesModelList = new ArrayList<>();
if(!CollectionUtils.isEmpty(secQuestionsEnty)){
for(SecQuestion secQuesEnty:secQuestionsEnty){
SecQuestionModel secQuesModel = new SecQuestionModel();
secQuesModel.setSecQuesId(secQuesEnty.getId().toString());
secQuesModel.setSecQuestion(secQuesEnty.getSecQuestion());
secQuesModel.setSecQuestionDesc(secQuesEnty.getSecQuestionDesc());
secQuesModel.setCreatedTime(SecQuestionUtil.convertDateTimeToString(secQuesEnty.getCreatedTime()));
secQuesModel.setUpdatedTime(SecQuestionUtil.convertDateTimeToString(secQuesEnty.getUpdatedTime()));
secQuesModel.setCreatedBy(secQuesEnty.getCreatedBy());
secQuesModel.setUpdatedBy(secQuesEnty.getUpdatedBy());
secQuesModelList.add(secQuesModel);
}
}
logger.info("fetchSecQuestions() Ends");
return secQuesModelList;
}
这里我的意图是使用密钥 sec-ques-list 将我的 SecQuestionModel lits 存储在缓存中。它按预期工作,但是当我登录并看到 redis cahce 时,我无法使用以下命令找到这个关键对象。
LLEN sec-ques-list -> 这返回(整数)0 但我有一些对象。
我的代码是否真的将我的对象保存在 Redis 中?或者如何查看spring boot app存储的redis中的对象。
【问题讨论】:
-
你找到答案了吗?
标签: spring-boot spring-data-redis redis-cache