Компонент файла шва в javaee6

Я пытаюсь воспроизвести загрузку файла свойств шва в javaee6, но до сих пор не знаю, с чего начать.

В шве мы можем загрузить файл свойств как компонент шва, определив его в component.xml:

<component name="propertyBean" class="PropertyBean" scope="application" auto-create="true" startup="true">
    <property name="filename">myPropertyFile.properties</property>
    <property name="reload">true</property>
</component>

И тогда мы можем получить к нему доступ в коде:

PropertyBean.getInstance().getProperty("myProperty");

Есть ли функция javaee6, которая будет воспроизводить эту функциональность? Или весной это называется PropertyPlaceholder.

В C# мы можем сделать это, добавив свойство конфигурации в appsettings.xml. И доступ через ConfigurationManager.

Спасибо,
czetsuya


person czetsuya    schedule 09.06.2012    source источник


Ответы (1)


К сожалению, нет ничего похожего на менеджер компонентов свойств из шва в javaee6, но мне удалось найти что-то похожее, загрузчик свойств.

Он работает, имея квалификатор:

@Qualifier
@Retention(RUNTIME)
@Target({METHOD, FIELD, PARAMETER, TYPE})
public @interface ConfiguredBy {
    @Nonbinding public String value();
}

С параметром, который служит именем файла свойств.

Весь подход описан здесь: http://john-ament.blogspot.com/2010/03/writing-property-loader-in-java-ee-6.html

person czetsuya    schedule 07.01.2013