SooBlending

[Java] Properties / Enumeration 본문

Programming/Java

[Java] Properties / Enumeration

블랜더 2017. 11. 17. 09:31

<Properties>


import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

import java.util.Enumeration;

import java.util.Properties;


public class PropertiesTest {

public static void main(String[] args) {

Properties pro = new Properties();

// property(속성) ==> 속성데이터를 저장하는 클래스

//데이터저장(입력)

//pro.setProperty(String key, String value);

//key : 저장 또는 검색을 위한 값 (유일한 성격)

//value : 저장하고자 하는 문자열 (text) 데이터

pro.setProperty("k1", "홍길동");

pro.setProperty("k2", "길라임");

pro.setProperty("k3", "김주원");

pro.setProperty("k3", "김바보"); // --> k3에 overwrite

System.out.println("k1 ===>" + pro.getProperty("k1"));

System.out.println("k2 ===>" + pro.getProperty("k2"));

System.out.println("k3 ===>" + pro.getProperty("k3"));

 

//만약 key 값을 모르는 경우

Enumeration enu = pro.propertyNames();

// Enumeration : 열거형 인터페이스

while(enu.hasMoreElements()) {

Object key = enu.nextElement();

System.out.println(key + ":" + pro.getProperty((key.toString())));

}

try {

pro.load(new FileReader("test.properties"));

} catch (FileNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.println(pro.getProperty("name"));

System.out.println(pro.getProperty("age"));

System.out.println(pro.getProperty("job"));

System.out.println(pro.getProperty("name"));

}

}


==> 장점 : DB연결 정보를 이렇게 따로 관리하면, 변경사항이 생겼을 시에 이 properties 파일만 수정해주면 전부 일괄적으로 수정이 가능해진다.


Comments