Pernah harus membuat aplikasi dengan file konfigurasi yang disimpan diluar aplikasi tersebut? Masih menggunakan regex untuk menyaring konfigurasi yang tepat? Sudah saatnya beralih ke .properties yang disediakan oleh Java Development Kit.  Saya tidak menyebut cara ini lebih baik dari baca konfigurasi menggunakan regex, mungkin ada yang lebih senang menggunakan regex dengan alasan tertentu, tapi menurut saya cara ini jauh lebih mudah.

Oke, tanpa panjang lebar, (cape juga c ngarang basa-basinya😀 ), pertama-tama, buat file .properties yang ingin digunakan sebagai penyimpan konfigurasi. Dalam tutorial ini saya buat database.properties , yang isinya seperti dibawah ini :

javax.persistence.jdbc.url=jdbc:postgresql://192.168.1.40:5432/DB_NAME
javax.persistence.jdbc.password=passwordDB
javax.persistence.jdbc.user=userNameDB

Setelah itu tinggal buat .properties loader seperti dibawah ini untuk menggunakannya.

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author EtaYuy aka. Meihta Dwiguna Saputra
 */
public class Main {
    //nama properties
    private final static String dbURLKey = "javax.persistence.jdbc.url";
    private final static String dbNameKey = "javax.persistence.jdbc.user";
    private final static String dbPassKEy = "javax.persistence.jdbc.password";

    //lokasi properties
    private final static String configLocation = "database.properties";

    //buat properties
    private Properties properties = new Properties();

    public static void main(String[] args) {
        try {
            new Main().loadProperties();
        } catch (FileNotFoundException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    private void loadProperties() throws FileNotFoundException, IOException
    {
        //ambil file properties berdasarkan lokasinya
        FileInputStream fis = new FileInputStream(configLocation);
        //load properties berdasarkan file yg diambil
        properties.load(fis);
        //gunakan propertiesnya
        System.out.println(properties.getProperty(dbURLKey));
        System.out.println(properties.getProperty(dbNameKey));
        System.out.println(properties.getProperty(dbPassKEy));
        fis.close();
    }

}

Pada baris yang highlighted , ialah contoh penggunaannya , terserah pembaca ingin menggunakan konfigurasinya buat apa setelah properties di-load.

Sangat mudahkan? Semoga membantu bagi yang ingin membangun sebuah program dengan file konfigurasi.  Maju terus developer Java Indonesia, semoga bermanfaat.😉

Untuk informasi post terbaru :