Bu yazıda Java ilə sadə konfiqurasiya fayllarının istifadəsini göstərəcəm.
Ümumiyyətlə dəyişə bilən məlumatları proqramdan kənarda saxlamaq və istifadə etmək daha məqsədə uyğundur. Məsələn bazaya qoşulmaq üçün istifadə olunan məlumatları (istifadəçi adı, şifrə, serverin İP adresi və s.) proqram kodunda bir başa yazmaqdansa, ayrı konfiqurasiya faylında saxlamaq əlverişlidir.Məsələn, proqram hazırlanarkən test bazadan istifadə edirik, tamamlandıqdan sonra isə onu əsas bazaya qoşmaq lazım gəlir. Belə olan halda proqram kodundakı məlumatları dəyişib yenidən kompilyasiya etmək heç də yaxşı variant deyil. Bunun üçün ayrıca konfiqurasiya faylı lazımdır.
Aşağıdakı nümunə Java proqramında konfiqurasiya faylının istifadəsi əyani şəkildə göstərilmiş və lazımi yerlərdə şərhlər yazılmışdır.
Proqram kodunu oxuyub analiz etmək və daha sonra proyekti öz kompüterinizə yükləyib, işlədib baxmaq, test eləmək lazımdır.
package configmanager;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.Properties;
import java.util.Set;
/**
*
* @author Ramin Orujov
*/
public class Main {
public static void main(String[] args) {
try {
// Konfiqurasiya faylini yuklemek
String configFile = "config.properties";
Properties config = new Properties();
config.load(new FileReader(configFile));
// Konkret elementi konfiqurasiya faylindan oxumaq
String username = config.getProperty("db.username");
String password = config.getProperty("db.password");
System.out.println("Db user = " + username + " password = " + password);
// Eger konfiqurasiya faylinda test adli element yoxdursa, onda onun qiymeti 123 olsun
String test = config.getProperty("test", "123");
System.out.println("test = " + test);
// Konfiqurasiya faylindaki butun elementleri oxumaq
Set<String> all = config.stringPropertyNames();
Iterator<String> iterator = all.iterator();
System.out.println("Butun elementler");
while(iterator.hasNext()) {
String key = iterator.next();
String value = config.getProperty(key);
System.out.println(key + " = " + value);
}
// Elementin qiymetini deyismek
config.setProperty("db.username", "hrtest");
config.setProperty("db.password", "hrpassword");
// Yeni element elave etmek
config.put("yeni", "element");
// Deyismis konfiqurasiya faylini yaddasa yazmaq
// 2-ci parametr fayla yazilacaq serhi gosterir
config.store(new FileWriter(configFile), "Deyisdirilmis konfiqurasiya fayli");
} catch (FileNotFoundException ex) {
System.err.println("Konfiqurasiya fayli yoxdur.");
} catch (IOException ex) {
System.err.println("Fayldan oxuma xetasi bas verdi");
}
}
}
Nümunə proyektin tam versiyasını buradan yükləyə bilərsiniz: http://www.boxca.com/597vwmz2orc5/ConfigManager.zip.html
Əlavə olaraq buradan yükləyin və faylın adını ConfigManager.zip olaraq dəyişin. Java ile konfiqurasiya faylinin istifadesine aid numune proyekt
Sual və təkliflərinizi şərh olaraq yaza bilərsiniz.
Ümid edirəm ki, faydalı oldu. Uğurlar!
Mənbə http://raminorucov.wordpress.com



