Éviter les appels de la base de données répétées pour les mêmes paramètres à l'aide de Java 8 ou données Spring JPA

Kiran Nair:

J'ai un appel de base de données qui est dans Oracle et j'utilise les données du printemps JPA pour cela.

J'ai une fonction qui utilise cet appel db pour récupérer le résultat à chaque fois dans la boucle.

Maintenant, mon problème est la plupart du temps la combinaison des valeurs de paramètres répètent. Comment éviter cela et est-il un moyen de stocker temporairement pour l'ensemble donné de combinaison et le jeu de résultats correspondant sans aucun mécanisme de mise en cache.

Toute chance en Java 8 ou les données de printemps JPA lui-même ?.

Jens Schauder:

Vous avez différentes options.

  1. Si vous utilisez Hibernate vous pouvez utiliser le cache de requêtes de ce: https://vladmihalcea.com/how-does-hibernate-query-cache-work/ Je ne sais pas si EclipseLink a une fonction similaire.

  2. Vous pouvez utiliser l' installation de la mise en cache Springs. https://spring.io/guides/gs/caching/

  3. Et bien sûr , vous pouvez votre propre rôle en rassemblant tous les paramètres dans un seul objet avec une bonne equalset la hashCodemise en œuvre et stocker le résultat dans unHashMap

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=367438&siteId=1
conseillé
Classement