Senior
48
Sual 7. ExampleService adlı bir xidmət var (şəkilə bax). Əgər xarici xidmət ardıcıl olaraq aşağıdakı metodları çağırırsa: exampleService.getCityFromCache(100000); exampleService.getCity(100000); Cache boşdursa, CityDao::getCity neçə dəfə çağırılacaq? @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-in həyata keçirilməsindən asılıdır
Şirkətlər soruşuldu
RT Labs
AI-dan cavab
sobes.tech Süni İntellekt
Обращение к CityDao::getCity будет выполнено один раз.
Пояснение:
- Метод
getCityFromCacheпомечен аннотацией@Cacheable, значит при первом вызове с параметром100000результат будет получен изdao.getCity(100000)и закэширован. - Второй вызов
exampleService.getCity(100000)вызывает внутри себяgetCityFromCache(100000), но так как результат уже в кэше,dao.getCityне вызывается повторно.
Итог: при пустом кэше первый вызов вызывает DAO, второй — использует кэш.
Ответ: 1.