java Spring缓存存储库按id查找一个实体
我有一个从DB获取数据的数据存储库DAO类,它有我的控制器/服务类调用的以下方法:
@Override
public Account getOne(final String id) {
this.namedParameterJdbcTemplate.queryForObject(this.BY_ID,
namedParameters,
new Mapper());
}
@Cacheable(value = "accounts")
@Override
public List<Account> getAll() {
return this.namedParameterJdbcTemplate.query(this.ALL, new Mapper());
}
@CacheEvict(value = "accounts", allEntries = true)
public void evictAll() {
}
我正在缓存一个昂贵的getAll()
调用的结果。
调用executeAll()的计划程序也会刷新此设置
我的问题是如何缓存getOne()
,因为它需要一个id参数。
我应该创建一个新的缓存还是可以使用现有的一个“accounts”来引用id
。任何带有一些示例或示例指针的想法都将不胜感激
共 (0) 个答案