Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




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));

}




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


Дата добавления: 2014-12-26; Просмотров: 555; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.