Скачаем все необходимые библиотеки

ConfigLoader - доступен на сайте по адресу: http://configloader.sourceforge.net/index.php/Downloads файл configloader_*.jar.

Дополнительно нам понадобится библиотека, реализующая SAX – simple api for XML. В мире java представлено множество подобных разработок, но для определенности воспользуемся xerces – решением от сообщества apache.

Актуальную версию можно скачать здесь:

http://xerces.apache.org/xerces2-j/download.cgi.

Здесь Вам понадобится файл - Xerces-J-bin.*.zip

На самом деле в ходе выполнении лабораторной работы Вам не потребуется скачивать все эти библиотеки, для их получения необходимо обратиться к преподавателю.

Для определенности мы хотим, чтобы наш первый класс читал секцию mail из файла конфигурации: smtp, login и password; и выдавал эти данные на консоль. Создадим новый класс “Example1” в пакете “configartice”. Для начала нам необходимо импортировать нужные классы, точнее класс:

import om.romanenco.configloader.ConfigLoader;

В самом теле класса создадим метод main

 

public static void main(String[] args) {

...

...

}

 

Наши дальнейшие строки кода мы будем добавлять в тело этого метода. Первая наша строка – создание объекта, который и позволит нам удобно работать с конфигурациями.

ConfigLoader config = new ConfigLoader();

Следующим шагом будет загрузка самой конфигурации, сделать это тоже весьма просто:

config.LoadFromFile("xml/example1.xml");

 

Теперь самое интересное, нам надо прочитать значения трех тегов smtp, login и password, которые вложены в тэги mail и config.

Код при этом прост:

System.out.println("Host = " +

config.getTagValue("config.mail.smtp"));

 

System.out.println("Username = " +

config.getTagValue("config.mail.login"));

 

System.out.println("Password = " +

config.getTagValue("config.mail.password"));

 

Не трудно заметить, как нам обратиться нужному тегу: надо просто задать цепочку имен тегов, начиная от корневого и так до него нужного нам.

Полный текст нашего примера будет таким:

 

package configarticle;

import com.romanenco.configloader.ConfigLoader;

 

public class Example1 {

 

public static void main(String[] args) {

 

ConfigLoader config = new ConfigLoader();

config.LoadFromFile("xml/example1.xml");

System.out.println("Host = " +

config.getTagValue("config.mail.smtp"));

System.out.println("Username = " +

config.getTagValue("config.mail.login"));

System.out.println("Password = " +

config.getTagValue("config.mail.password"));

}

 

}

Как мы видим, подобный подход к оформлению конфигурационных файлов создает удобства и для разработчика, и для конечного пользователя.

Разработчик может использовать простой и надежный подход во всех проектах, а пользователь (даже не высококвалифицированный) будет иметь возможность ясно настраивать приложение.

 

 

2.2. INI файл

 

Ini файлы – это простые текстовые файлами с расширением ini (в принципе можно и с любым другим). Ini файлы предназначены для хранения настроек программы.

Ini файлы разделены на разделы, содержащие идентификаторы, которым, в свою очередь, можно присвоить значения. В общем виде структура ini файла такова:

 
[Раздел1] Идентификатор1=Значение1 Идентификатор2=Значение2 [Раздел2] Идентификатор1=Значение1 И т.д.

 

Выражение Идентификатор = Значение очень часто называют ключом.

 

Пример ini файла:

 

[LOGS Database Driver]

DriverName=oracle.jdbc.driver.OracleDriver

DataBaseURL=jdbc:oracle:thin:@192.168.0.245:1521:xionet

UserName=xiouser

Password=user

[LOGS Directories]

TempDirectory=c:\\Sqlarch\\

ArchiveDirectory=c:\\Sqlarch\\

ReserveDirectory=c:\\sqlarch\\

[LOGS System Info]

SystemInfoId=1

[Timeouts]

RetryTimeout=10

 

Для чтения данных из ini файла можно использовать класс java.util.Properties и его метод load. После создания экземпляра класса Properties (например ini) и запуска его метода load можно получить имена полей (идентификаторов) и их значения следующим образом:

Enumeration e = ini.propertyNames() ;

while (e.hasMoreElements()) {

Object element=e.nextElement();

System.out.print(element+"=");

System.out.println(ini.getProperty((String)element));

}








Дата добавления: 2016-01-07; просмотров: 1125;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.