У меня есть несколько разных баз данных для разных сред, к которым я могу подключить свое приложение. Они постоянны для каждой установки, но различаются между ними. Другими словами, есть
- Среда разработки, которая подключается к базе данных разработки
- Тестовая среда, которая подключается к тестовой базе данных и, наконец,
- Производственная среда с собственной базой данных
Hibernate используется через аннотации, и код не «знает», в какой среде он запускается. Все базы данных управляются mySQL, но различаются по URL, имени пользователя и паролю.
В настоящее время я удалил hibernate.cfg.xml из приложения и переместил его в домашний каталог приложения-сервера-пользователя, но это не кажется очень хорошим решением по соображениям безопасности и потому, что это привело к необходимости обновлять вручную любые измененные сопоставления при обновлении среды.
Я действительно надеюсь, что есть лучшее решение, но я не могу его найти.