javaee6中的Seam文件组件

时间:2012-06-09 23:09:03

标签: java-ee-6 seam2

我正在尝试复制javaee6中的seam属性文件的加载,但仍然不知道从哪里开始。

在seam中,我们可以通过在components.xml中定义一个属性文件作为seam组件:

<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

1 个答案:

答案 0 :(得分:0)

不幸的是,没有什么比从seam到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