/ / ako priradiť rôznu stratégiu súbežnosti tej istej (perzistenčnej) entite? java, hibernate, cachovanie, súbežnosť

ako priradiť odlišnú stratégiu súbežnosti rovnakej (vytrvalosti) entite? java, hibernácia, ukladanie do vyrovnávacej pamäte, súbežnosť

Používam protokol JPA a používam vyrovnávaciu pamäť druhej úrovne pre všetky referenčné entity. Všetko funguje dobre, môžem získať entity z cache druhej úrovne, ktoré už boli vybrané predtým.

Teraz mám dve aplikácie, obe používajúdatabázu (takže obe používajú rovnakú tabuľku, hodnoty, atď.). 1. Iba na čítanie aplikácie len čítať dáta z databázy, to nie je "t upraviť databázu vôbec. Preto som si vybrať." Stratégia „READ_ ONLY“ pre vyrovnávaciu pamäť druhej úrovne s cieľom dosiahnuť lepší výkon. 2. Read-write aplikácie čítať a zapisovať aj dáta databázy, upravovať databázu. Preto si musím vybrať "READ_ WRITE" alebo "NONSTRICT_ READ_ WRITE" súbežná stratégia pre vyrovnávaciu pamäť druhej úrovne.

Stratégia súbežnosti je však priradená vanotáciu každej triedy entity, takže ju nemôžem programovo zmeniť. (Nepoužívam súbory mapovania tried pre protokol JPA, takže nemôžem použiť dva mapovacie súbory, každý pre inú stratégiu súbežnosti pre tú istú triedu entity.)

Moja otázka je, Existuje dobrý spôsob, ako zmeniť súbežnú stratégiu druhej úrovne cache podľa mojich 2 rôznych aplikácií?

odpovede:

2 pre odpoveď č. 1

Nepoužil som Hibernate, ale aspoň ak stepoužitie JPA je možné prepísať aj jednu anotáciu súborom deskriptora nasadenia. Tiež by ste mali mať možnosť prepísať aj akúkoľvek vlastnosť špecifickú pre dodávateľa s deskriptorom nasadenia.

Bohužiaľ vám nemôžem dať príklad, ale dúfam, že vám to pomôže.


0 pre odpoveď č. 2

Preto si myslím, že súčasné riešenie jenahradiť všetky anotácie každej entity mapovacími súbormi Hibernate, aby sme mohli pre rôzne nasadenia (aj aplikácie) použiť rôzne súbory mapovania Hibernate.