在Spring MVC app中读取属性文件

时间:2017-11-13 11:05:29

标签: spring

我正在尝试使用下面的代码读取属性文件,基本上我有一个Spring Boot应用程序,我正在尝试阅读下面的非spring bean类。属性文件位于src / main / resource目录中

public class VisaProperties {

    static Properties properties;

    static {
        try {
            properties = new Properties();
            String propertiesFile = System.getProperty("ftproperties");
            if (propertiesFile == null) {
                properties.load(VisaProperties.class.getResourceAsStream("motoconfig.cybersource.properties"));
            } else {
                properties.load(new FileReader(propertiesFile));
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

    public static String getProperty(Property property) {
        return (String) properties.get(property.getValue());
    }
}

并尝试使用下面的代码调用结束点属性获取null。我该如何致电该物业?

VisaProperties.getProperty(Property.END_POINT)

2 个答案:

答案 0 :(得分:1)

您可以将代码简化为:

final Properties properties = new Properties();
try (final InputStream stream =
       this.getClass().getResourceAsStream("config.properties")) {
       properties.load(stream);
}
  

注意:使用“尝试使用资源”,以便自动生成流   try {}块退出时关闭。

答案 1 :(得分:0)

完成,使用以下代码:

Properties properties = new Properties();
            InputStream inputStream = VisaProperties.class
                    .getClassLoader()
                    .getResourceAsStream("config.properties");
            properties.load(inputStream);
            inputStream.close();