У меня есть приложение для запуска приложений на Java, использующее Hibernate в качестве реализации JPA, и использование Guice для объединения всех сервисов.Контекст сохранения Hibernate на основе хоста сервера с Джерси
В моем случае используется один экземпляр приложения, обслуживающий несколько локализаций, доступных под разными хостами. Простым примером может быть английская версия и французская версия на application.com
и application.fr
. В зависимости от того, какой хост запущен, мне нужно будет переключить приложение, чтобы использовать другую базу данных.
В настоящее время у меня только один singleton SessionFactory
configure, который используется всеми объектами доступа к данным, обеспечивая доступ только к одной базе данных.
Я пытаюсь получить самый простой способ передать информацию о контексте страны, все они из ресурса (где я могу извлечь его из контекста запроса) в DAO, который должен выбрать один из несколько SessionFactory
s.
Я могу передать параметр в каждом методе обслуживания, но это кажется очень утомительным. Я подумал о том, чтобы использовать реестр, который будет иметь экземпляр ThreadLocal
текущего параметра страны, установленный фильтром Джерси, но потолочные локаторы будут работать с использованием исполнителей и т. Д.
Есть ли какие-либо изящные способы достижения этого?
Какую версию с Джерси вы используете? –
Мы используем Jersey 2.19, обновляя несовершеннолетние время от времени – vvondra