阅读量:3
在Java程序中获取配置文件的值,可以使用Java的Properties类或者配置文件的相关类库来实现。
- 使用Properties类:
首先将配置文件加载到Properties对象中,然后通过getProperty()方法获取配置项的值。
import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class ConfigReader { public static void main(String[] args) { Properties prop = new Properties(); InputStream input = null; try { input = new FileInputStream("config.properties"); prop.load(input); String value = prop.getProperty("key"); System.out.println("Value: " + value); } catch (IOException ex) { ex.printStackTrace(); } finally { if (input != null) { try { input.close(); } catch (IOException e) { e.printStackTrace(); } } } } }
上述代码中的配置文件为"config.properties",其中包含了一个名为"key"的配置项。
- 使用配置文件的相关类库:
除了使用Properties类,还可以使用Apache的Commons Configuration库等第三方库来读取配置文件。
使用Apache Commons Configuration库示例:
import org.apache.commons.configuration2.Configuration; import org.apache.commons.configuration2.builder.FileBasedConfigurationBuilder; import org.apache.commons.configuration2.builder.fluent.Parameters; import org.apache.commons.configuration2.ex.ConfigurationException; public class ConfigReader { public static void main(String[] args) { Parameters params = new Parameters(); FileBasedConfigurationBuilder<PropertiesConfiguration> builder = new FileBasedConfigurationBuilder<>(PropertiesConfiguration.class) .configure(params.properties() .setFileName("config.properties")); try { Configuration config = builder.getConfiguration(); String value = config.getString("key"); System.out.println("Value: " + value); } catch (ConfigurationException ex) { ex.printStackTrace(); } } }
上述代码使用了Apache Commons Configuration库的PropertiesConfiguration类来读取配置文件。需要先创建一个FileBasedConfigurationBuilder对象,然后通过configure()方法指定配置文件的路径,最后通过getConfiguration()方法获取配置对象,并使用getString()方法获取具体配置项的值。