簡體   English   中英

何時在Java EE webapp中初始化屬性?

[英]When to initialize properties in Java EE webapp?

我們有一個基於JAX-RS的webapp,它將需要從屬性文件中讀取一些配置。 我編寫了一個ConfigurationProvider幫助器類,該類加載這些屬性。 該類將在多個類中使用。 我的問題是何時和在何處初始化ConfigurationProvider?

    public class ConfigurationProvider {
private static Properties properties;
private static ConfigurationProvider config;
private static final String XYZ_PROPERTIES = "xyz.properties";

static {
    config = new ConfigurationProvider();
}

private ConfigurationProvider() {
    try {
        InputStream in = this.getClass().getClassLoader().
                getResourceAsStream(XYZ_PROPERTIES);
        properties = new Properties();
        properties.load(in);
    } catch(IOException ie) {
        ie.printStackTrace();
    }
}

public static ConfigurationProvider getInstance() {
    return config;
}

public String get(String propname) {
    return properties.getProperty(propname, null);
}
    }  

問候

http://docs.oracle.com/javaee/5/api/javax/annotation/PostConstruct.html

您可以在JAX-RS資源類中使用PostConstruct方法。

@PostConstruct
private void init() {
   /initialize...
}

但是,我不確定定義單例的應用程序是一個好主意。 如果使用的是Java EE環境,則可以改用ApplicationScoped bean。

http://docs.oracle.com/javaee/6/api/javax/enterprise/context/ApplicationScoped.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM