Sobes.tech
Senior
44

შეკითხვა 7. არსებობს სერვისი ExampleService (იხილეთ სურათი). თუ გარე სერვისი უწყვეტად იძახის მეთოდებს: exampleService.getCityFromCache(100000); exampleService.getCity(100000); თუ კეში იყო ცარიელი, რამდენჯერ იქნება მიმართვა CityDao::getCity-ს? @Component @RequiredArgsConstructor public class ExampleService { private final CityDao dao; @Cacheable public String getCityFromCache(int index) { return dao.getCity(index); } public String getCity(int index) { return getCityFromCache(index); } } 0 1 2 ეს CacheManager-ის განხორციელებაზეა დამოკიდებული

კომპანიებმა სადაც სთხოვეს
RT Labs

პასუხი AI-სგან

sobes.tech AI

Обращение к CityDao::getCity будет выполнено один раз.

Пояснение:

  • Метод getCityFromCache помечен аннотацией @Cacheable, значит при первом вызове с параметром 100000 результат будет получен из dao.getCity(100000) и закэширован.
  • Второй вызов exampleService.getCity(100000) вызывает внутри себя getCityFromCache(100000), но так как результат уже в кэше, dao.getCity не вызывается повторно.

Итог: при пустом кэше первый вызов вызывает DAO, второй — использует кэш.

Ответ: 1.