spring数据存储库中的默认方法是否会命中同一存储库中其他方法的缓存?
例如,调用此方法:
default Long findIdByCodeRequired(final String code) {
if (StringUtils.isBlank(code)) {
throw new DataCheckException(MSG_CODE_REQUIRED, getEntityMessageArgument());
}
return findIdByCode(code).orElseThrow(notFound(code));
}
点击这个方法的缓存?
@Cacheable("codeType-findIdByCode")
@Query("select c from #{#entityName} c " //
+ "where c.code = :code")
Optional<Long> findIdByCode(String code);
或者默认方法不通过缓存工作所需的代理吗?
1条答案
按热度按时间wsxa1bj11#
所以答案是“不,存储库中的默认方法不会命中其他方法的缓存”
输出: