[英]does spring data jpa do caching
我有一個看起來像這樣的簡單存儲庫
public interface PlayerLevelRepository extends CrudRepository<PlayerLevel, Integer> {
@Query("FROM PlayerLevel WHERE exp <= :exp ORDER BY exp DESC")
List<PlayerLevel> findClosestToExperienceLevel(@Param("exp") long exp);
}
我正在分析來自休息的響應時間,發現第一次休息執行的速度比下一次慢十倍。
所以我決定檢查存儲庫方法的時間(那里沒有其他耗時的操作)
@Override
public int findClosestLevel(long exp) {
long startTime = System.nanoTime();
int closestLevel = levelRepository.findClosestToExperienceLevel(exp).get(0).getLevel();
long endTime = System.nanoTime();
LOGGER.info("Execution time: {}", endTime - startTime);
return closestLevel;
}
而且我看到第一次調用花費了35012440
即35 ms
。 第二,第三和其他調用花費的時間減少了2194712
或2ms
, 3058421
或3ms
等等。
我的問題是Spring Data JPA
緩存某些查詢結果?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.