Рекомендации по настройке приложения / бина J2EE? - PullRequest
5 голосов
/ 19 ноября 2010

Каков наилучший способ управления наборами свойств для применения к EJB и простого изменения их между машинами / средами (например, DEV, TEST, PROD)? Например, есть ли способ настроить свойства EJB на сервере приложений (который гарантирует, что вы можете изменять их в зависимости от машины / среды).

В частности:

1) У меня есть Singleton EJB, который требует определенных свойств (среды). Существуют ли аннотации, которые используются для указания контейнеру EJB, где искать эти свойства, и автоматически применяют их к бину?

2) Каков наилучший способ управления различными наборами свойств, например dev, test, prod, чтобы приложение J2EE было переносимым между серверами, и вы можете легко управлять свойствами, характерными для каждого сервера?

Если есть хорошие ссылки на документацию - дайте мне знать. Я погуглил и ничего не увидел прямо в пунктах выше.

1 Ответ

2 голосов
/ 09 августа 2011

Я использую одноэлементный вспомогательный класс «PropertiesHelper», который имеет Properties член и читает из файла конфигурации xml при первой попытке доступа к свойству. Помощник инкапсулирует весь набор параметров конфигурации и предотвращает их чтение с диска более одного раза.

Местоположение файла указывается в моих настройках Java и считывается PropertiesHelper с помощью System.getProperty ()

Что касается аннотаций системных свойств, я не верю, что Java поддерживает это изначально, но если вы так склонны, вы можете взглянуть на некоторые инфраструктуры AOP / Dependency Injection, такие как Google Guice , которые лучше на этом "сквозном".

...