Кэшированные данные с использованием SpringJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Кэшированные данные с использованием Spring

Сообщение Anonymous »

Не могли бы вы дать мне несколько советов, почему не работает кеш данных в приложении Spring.
Мое приложение работает с таблицей RequestHitory в базе данных Posgres.
Я хочу для кэширования данных из этой таблицы в моем приложении Spring.
Я использую аннотацию @EnableCaching для приложения:

Код: Выделить всё

@SpringBootApplication
@EnableCaching
public class MyApplication {

public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}

}
Класс RequestHistory

Код: Выделить всё

@RequiredArgsConstructor
@AllArgsConstructor
@Entity
@Table(name="requesthistory")
@Data
public class RequestHistory implements Serializable {

@Id
String name;

@Column(name="request_last_date_time")
LocalDateTime requestLastDateTime;

}
Репозиторий DAO

Код: Выделить всё

@Repository
public interface RequestHistoryDAORepository extends JpaRepository {

RequestHistory findByName(String name);
}

У меня есть услуга:

Код: Выделить всё

@Service
@RequiredArgsConstructor
//@CacheConfig(cacheNames = "requests")
public class RequestHistoryService {

private final CacheManager cacheManager;

private final RequestHistoryDAORepository requestHistoryRepository;

@Cacheable("requests")
public RequestHistory getRequestHistoryByName(String requestName) {
return requestHistoryRepository.findByName(requestName);
}

public Cache getCacheData() {
Cache data = cacheManager.getCache("requests");
return data;
}

}

Я пытаюсь изучить, как работает кэширование данных в Spring.
Я использую код:

Код: Выделить всё

@Service
@RequiredArgsConstructor
public class AllDataLoader {

private final RequestHistoryService requestHistoryService;

public void load() {
requestHistoryService.getCacheData();
RequestHistory requestHistory = requestHistoryService.getRequestHistoryByName(requestName);
requestHistoryService.getCacheData();
}
}
Когда я запускаю этот код, я вижу, что кеш не содержит никаких данных после первого вызова RequestHistory requestHistory = this.getRequestHistoryByName(requestName).
Не могли бы вы помочь мне понять, почему в моем случае не работает кеш данных.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ing-spring
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»