Обработка файла свойств Java
Вступление
Свойства - это расширение файла для файлов, которые в основном используются в технологиях, связанных с Java, для хранения настраиваемых параметров приложения. Файлы свойств Java - удивительные ресурсы для добавления информации в Java. Как правило, эти файлы используются для хранения статической информации в паре ключ и значение. Вещи, которые вы не хотите жестко кодировать в своем коде Java, попадают в файлы свойств. Преимущество использования файла свойств заключается в том, что мы можем настраивать вещи, которые могут меняться в течение определенного периода времени, без необходимости что-либо менять в коде. Файл свойств обеспечивает гибкость в плане конфигурации. Пример файла свойств показан ниже, который содержит информацию в паре ключ-значение.
Каждый параметр хранится в виде пары строк, левая сторона знака равенства (=) предназначена для хранения имени параметра (называемого ключом), а другая - для хранения значения.
Конфигурация:
This is property file having my configuration
FileName=Data.txt
Author_Name=Amit Himani
Website=w3resource.com
Topic=Properties file Processing
Первая строка, которая начинается с #, называется строкой комментариев. Мы можем добавлять комментарии в свойствах, которые будут игнорироваться компилятором java.
Ниже приведена Java-программа для чтения вышеуказанного файла свойств.
Java-код:
package propertiesfile;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
public class PropertyFileReading {
public static void main(String[] args) {
Properties prop = new Properties();
try {
// load a properties file for reading
prop.load(new FileInputStream("myConfig.properties"));
// get the properties and print
prop.list(System.out);
//Reading each property value
System.out.println(prop.getProperty("FileName"));
System.out.println(prop.getProperty("Author_Name"));
System.out.println(prop.getProperty("Website"));
System.out.println(prop.getProperty("TOPIC"));
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
Программа использует метод load () для получения списка. Когда программа выполняется, она сначала пытается загрузить список из файла с именем myConfig.properties. Если этот файл существует, список загружается, иначе выдается исключение IO.
Если файл не присутствует в корневом каталоге проекта по умолчанию, мы получим исключение, как показано ниже. Мы также можем указать полный путь к файлу.
Использование метода getProperties ()
Одна полезная возможность класса Properties состоит в том, что вы можете указать свойство по умолчанию, которое будет возвращаться, если никакое значение не связано с определенным ключом. Например, значение по умолчанию может быть указано вместе с ключом в методе getProperty (), например, getProperty («имя», «значение по умолчанию»). Если значение «имя» не найдено, возвращается «значение по умолчанию». Когда вы создаете объект Properties, вы можете передать другой экземпляр Properties, который будет использоваться в качестве свойств по умолчанию для нового экземпляра.
Запись свойств файла
В любой момент вы можете записать объект Properties в поток или прочитать его обратно. Это делает списки свойств особенно удобными для реализации простых баз данных. Для примера ниже программа пишет штатам столицы. Файл «capitals.properties», содержащий имя штата в качестве ключей и капитал штата в качестве значений.
Java-код:
package propertiesfile;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
public class PropertyFileWriting {
public static void main(String args[]) {
Properties prop = new Properties();
try {
// set the properties value
prop.setProperty("Gujarat", "Gandhinagar");
prop.setProperty("Maharashtra", "Mumbai");
prop.setProperty("Madhya_Pradesh", "Indore");
prop.setProperty("Rajasthan", "Jaipur");
prop.setProperty("Punjab", "mkyong");
prop.setProperty("Uttar_Pradesh", "Lucknow");
// save properties to project root folder
prop.store(new FileOutputStream("capitals.properties"), null);
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
После запуска программы мы можем увидеть новый файл с именем «capitals.properties» в корневой папке проекта, как показано ниже.
Веб 24 апреля 19:50:18 IST 2013 Uttar_Pradesh = Лакхнау Madhyar_Pradesh = Индор Махараштра = Мумбаи Гуджарат = Gandhinagar Пенджаб = mkyong Раджастхан = джайпур
Резюме:
- Файл свойств обеспечивает гибкость в плане конфигурации в Java-приложении.
- Мы можем хранить информацию в файле свойств, который можно изменять в течение определенного периода времени, например, свойства подключения к базе данных, пароль, имя входного файла или местоположение и т. Д.
- Мы можем читать / записывать файл свойств, используя библиотеку java.util.Properties Java.
Редактор кода Java:
Предыдущая: Запись файла
Далее: Сериализация Java
Новый контент: Composer: менеджер зависимостей для PHP , R программирования