Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Der Second Level Cache lässt sich ganz allgemein über die beiden Dateien "Persistence.xml" und der "ehcache.xml" konfigurieren

Persistence.xml

Image Added


Konfigurationsdatei festlegen

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="hibernate.javax.cache.uri" value="classpath:ehcache.xml" />

Legt fest über welche Date, mit welchem Namen das Cache-Verhalten allgemein konfiguriert wird. Normalerweise keine Änderung notwendig.

Regionfactory festlegen

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.jcache.JCacheRegionFactory" />

Legt fest, welche RegionFactory verwendet werden soll. Normalerweise keine Änderung notwendig.

Einschalten Caching allgemein

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="hibernate.cache.use_second_level_cache" value="true" />

Schaltet das Caching, den Second Level Cachen grundsätzlich ein. Bedeutet nicht, dass bereits etwas gecached wird.

Festlegen der Strategie für das einschalten des Caches

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="javax.persistence.sharedCache.mode" value="ENABLE_SELECTIVE" />

Legt fest, ob alle Entities grundsätzlich gecached werden und nicht gewollte Caches manuell deaktiviert werden müssen. Mögliche Werte:

  • value="ENABLE_SELECTIVE" → Caching für alle Entities aus, Cache muss bei jedem Entity manuell aktiviert werden
  • value="DISABLE_SELECTIVE" →  Caching für alle Entities an, Cache muss bei jedem Entity manuell deaktiviert werden

Einschalten Query Cache allgemein

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="hibernate.cache.use_query_cache" value="true" />

Schaltet das Caching für Queries grundsätzlich ein. Bedeutet nicht, dass bereits etwas gecached wird.

Festlegen der Strategie für die beiden Default Queries "AutoQueryData" und "FindAll"

Code Block
languagexml
themeEclipse
firstline1
linenumberstrue
<property name="xdev.queryCache.mode" value="ENABLE_SELECTIVE" />

Legt fest, ob alle Queries grundsätzlich gecached werden und nicht gewollte Caches manuell deaktiviert werden müssen. Mögliche Werte:

  • value="ENABLE_SELECTIVE" → Caching für beide Queries im Entity aus, Cache muss bei jedem Queries manuell aktiviert werden
  • value="DISABLE_SELECTIVE" →  Caching für beide Queries im Entity an, Cache muss bei jedem Queries manuell deaktiviert werden
  • value="ALL" → Caching ist für die beiden Default Queries der Entities unveränderbar angeschalten
  • value="NONE" → Caching ist für die beiden Default Queries der Entities unveränderbar ausgeschalten