【问题标题】:@Cacheable() returning id null@Cacheable() 返回 id null
【发布时间】:2019-06-16 20:53:19
【问题描述】:

我有一个方法findAll(),它从BD返回所有的专业,在这个方法中我把注释@Cacheable从缓存中获取数据,问题是当我执行/specialities api时,第一个我得到正确数据的时间,当我第二次执行 api 时,我得到空 id 的数据

@Service
@CacheConfig(cacheNames = ServiceConstant.SPECIALITY)
public class SpecialityServiceImpl implements SpecialityService {

    @Autowired
    private SpecialitySearchRepository specialitySearchRepository;

    @Autowired
    private SpecialtyMapper specialityMapper;

    @Override
    @Cacheable
    public List<SpecialityDTO> findAll() {
        return specialitySearchRepository.findAll().stream().map(specialityMapper::toDto)
                .collect(Collectors.toCollection(LinkedList::new));
    }

}

@RestController
public class SpecialityResource {

    @Autowired
    private SpecialityService specialityService;

    @GetMapping("/specialities")
    public List<SpecialityDTO> getAllSpecialitys() {
        return specialityService.findAll();
    }

}

配置

@Configuration
@EnableCaching
public class CacheConfiguration {

    private static final String HAZELCAST_LOGGING_TYPE = "hazelcast.logging.type";

    @Bean
    public Config hazelCastConfig() {
        return new Config().setInstanceName("cache")
                .addMapConfig(
                        new MapConfig().setName(ServiceConstant.SPECIALITY)
                                .setMaxSizeConfig(new MaxSizeConfig(200, MaxSizeConfig.MaxSizePolicy.FREE_HEAP_SIZE))
                                .setEvictionPolicy(EvictionPolicy.LRU).setTimeToLiveSeconds(100))
                .setProperty(HAZELCAST_LOGGING_TYPE, "none");
    }

}

【问题讨论】:

  • 粘贴你的缓存配置,可能会有帮助。

标签: spring caching hazelcast spring-cache


【解决方案1】:

@Aymen Kanzari,请看:https://gist.github.com/gokhanoner/766a1a807744d1a69c6a7799c3f34d73

我试图复制该问题,但它似乎按预期工作。第一次调用我可以看到inside findAll method,但接下来的调用只是命中了 Hazelcast 缓存。你能再描述一下这个问题吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-26
    • 2019-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多