每次用户进行API调用时,我们都希望缓存一些用户数据,因此在以后的每个API调用中都不需要。因此,当用户1拨打电话时,数据将被缓存,并且该方法将不会运行(直到在指定时间撤消缓存)。现在,如果用户2进行了调用,该方法将运行,并将该数据添加到缓存中。
我知道@CachePut可以帮助我运行该方法,但是如何检查缓存中是否已存在值?
@Cacheable(value=“userRoles”)
public List<String> getRoles(String userId){
List<String> roles = someDao.getRoles(userId);
return roles;
}