Konfigurieren des Abfragecachings in EclipseLink

8

Ich habe eine Sammlung von Zuständen, die ich für die Lebensdauer der Anwendung zwischenspeichern möchte, vorzugsweise nachdem sie zum ersten Mal aufgerufen wurde. Ich verwende EclipseLink als meinen Persistenzanbieter. In meiner EJB3-Entität habe ich den folgenden Code:

%Vor%

Dies scheint jedoch nichts zu tun, wenn ich die SQL-Abfragen, die zu MySQL gehen, überwachen, tut es immer noch eine Auswahl, wenn meine Session-Bean diese NamedQuery verwendet.

Wie wird diese Abfrage richtig konfiguriert, so dass sie nur einmal aus der Datenbank gelesen wird, vorzugsweise in allen Sitzungen?

Bearbeiten: Ich rufe die Abfrage so:

%Vor%     
rustyshelf 25.02.2009, 04:53
quelle

3 Antworten

8

Die hier geposteten Lösungen haben bei mir nicht funktioniert. Aber ich habe es geschafft mit:

%Vor%     
André Luiz Cardoso 26.07.2010 15:01
quelle
0

Nur eine Vermutung hier, aber Sie könnten versuchen

%Vor%

nachdem du es erstellt hast, aber bevor du getResultList .

- MarkusQ

    
MarkusQ 25.02.2009 05:41
quelle
0

Ich habe den EclipseLink 1.0.1 Cache zum Laufen gebracht, indem ich nur den Abfragehinweis hinzugefügt habe:

%Vor%

Ich habe die Entity überhaupt nicht geändert und habe noch nicht versucht, den Cache mithilfe von Annotationen zu konfigurieren.

    
tputkonen 23.03.2009 09:24
quelle