Предотвращение повторных вызовов базы данных для одних и тех же параметров с использованием Java 8 или данных Spring JPA - PullRequest
0 голосов
/ 30 марта 2020

У меня есть вызов базы данных, который находится в Oracle, и я использую Spring данные JPA для этого.

У меня есть функция, которая использует этот вызов БД для получения результата каждый раз в l oop.

Теперь моя проблема в том, что большую часть времени комбинация значений параметров повторяется. Как избежать этого и есть ли способ временно сохранить для данного набора комбинаций и соответствующего набора результатов без какого-либо механизма кэширования.

Удачи в Java 8 или самих данных JPA пружины?.

1 Ответ

0 голосов
/ 30 марта 2020

У вас есть различные варианты.

  1. Если вы используете Hibernate, вы можете использовать его кэш запросов: https://vladmihalcea.com/how-does-hibernate-query-cache-work/ Я не уверен, что EclipseLink имеет похожая особенность.

  2. Вы можете использовать средство кэширования Springs. https://spring.io/guides/gs/caching/

  3. И, конечно, вы можете использовать свои собственные параметры, собрав все параметры в один объект с правильной реализацией equals и hashCode и сохранением результат в HashMap

...