Hibernate per non memorizzare nella cache una proprietà
-
09-06-2019 - |
Domanda
Come posso configurare NHibernate per non memorizzare nella cache un file?
So di poter creare un metodo che esegua un HSQL, ma posso attraverso un'impostazione di configurazione nel file <class>.xml o nel file xml di ibernazione stesso per non memorizzare nella cache una proprietà?
Soluzione
Non è possibile configurare le impostazioni della cache secondaria a livello di proprietà (per quanto ne so), ma è possibile ottimizzare individualmente le impostazioni della cache per ciascuna entità direttamente nei relativi file XML.
Ad esempio:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="ClassName" table="Table">
<cache usage="nonstrict-read-write" />
<id name="Id" type="Int64" ...
Dove la proprietà "utilizzo" della cache può essere uno qualsiasi dei seguenti valori:
- leggere scrivere:assicura l'isolamento del read commit, assicura che i dati siano coerenti ma non riducono l'accesso al DB tanto quanto le altre modalità,
- lettura-scrittura non ristretta:oggetti con scritture rare, leggera possibilità di incoerenza tra DB e cache,
- sola lettura:per oggetti dati che non cambiano mai, nessuna possibilità di incoerenza.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow