/ / как да присвоите различни стратегии за конкуренция на една и съща (постоянна) единица? - java, хибернация, кеширане, конкуренция

как да присвоите различни стратегии за конкуренция на същата (постоянна) единица? - java, хибернация, кеширане, конкуренция

Използвам JPA и използвам кеш на второ ниво за всички референтни единици. Всичко работи добре, мога да получа обектите от кеш на второ ниво, тъй като те вече бяха избрани преди това.

Сега имам две приложения, и двете използватсъщата база данни (така че и двете да използват една и съща таблица, стойности и т.н.). 1.Потребителят само за четене просто чете данните от базата данни, изобщо не променя базата данни, затова избирам "READ_ ONLY" стратегия за конкуренция за кеш от второ ниво, с цел по-добро представяне. 2.Отчитането и записването на приложението чете и пише, както и данните от базата данни, той променя базата данни. Следователно трябва да избера "READ_ WRITE" или "NONSTRICT_ READ_ WRITE" стратегия за конкуренция за кеша на второ ниво.

Въпреки това стратегията за едновременност е зададена ванотацията на всеки клас на обект, така че не мога да го променя. (Не използвам файлове за картографиране на класове за JPA, затова не мога да използвам два файла за картографиране, всяка от които за различна стратегия за едновременност за един и същ клас на предприятието.)

Въпросът ми е, има ли добър начин да промените конкурентната стратегия на кеша на второ ниво в движение според моите 2 различни приложения?

Отговори:

2 за отговор № 1

Не съм използвал Hibernate, но поне ако стеизползването на JPA е възможно да се замени дори една анотация с файла с дескриптор на разполагане. Също така трябва да можете да преименувате всички свойства, специфични за доставчика, с дескриптора за разполагане.

За съжаление не мога да ви дам пример, но се надявайте, че това ще ви помогне.


0 за отговор № 2

Така че Ето защо, мисля, че настоящото решение е дазамени всички анотации на всяка единица с файлове за картографиране на Hibernate, така че за различно внедряване (приложение, както и), бихме могли да използваме различни Hibernate файлове за картографиране.