Чтение ini с помощью java.util.Properties

garrick

Lotus Team
26.10.2009
1 367
152
BIT
343
Может быть для кого-то это не новость, но я вот случайно обнаружил, что можно положить файл properties в каталог Domino на сервере и читать его из серверного агента. Более того, можно читать файл notes.ini как файл properties.

Java:
Properties properties = new Properties();
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("notes.ini");
if (inputStream != null) {
    properties.load(inputStream);
    for (String key : properties.stringPropertyNames()) {
        String value = properties.getProperty(key);
        System.out.println(key + " => " + value);
    }
} else {
    throw new FileNotFoundException("Property file notes.ini not found in classpath.");
}
inputStream.close();

Скажите для чтения notes.ini есть специальные средства... Но бывают случаи, когда файл свойств должен быть прочтён без вашего участия. Например, при использовании Spring JdbcTemplate можно подключить драйвер через XML конфигуратор Spring в котором будут ссылки на properties файл с параметрами соединения (имя JDBC драйвер, имя базы, пользователя, пароль и пр.). Все эти параметры можно хранить в одном месте, в notes.ini или специальном файле jdbc.properties, что очень удобно для исправления в случае переезда сервера СУБД или смене параметров пользователя для доступа к ней.

XML:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driverClassName}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
</bean>

<context:property-placeholder location="notes.ini"/>
 
  • Нравится
Реакции: savl и lmike

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 981
611
BIT
439
про нотес.ини - подозревал, но никогда не пытался использовать
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!