본문 바로가기

Language/Java / JSP

[Java] 프로퍼티(Properties) 파일 읽기

반응형

일을 하다보면 자주 변경되지 않는 설정파일이나 공통 정보등의 내용들이 종종 존재한다.
특히 설정파일의 경우 개발환경과 서비스 환경에서 약간의 차이만 발생할 뿐 한번 지정해두면 거의 변하지 않는다.

이럴때는 해당 정보를 프로퍼티(properties)로 만들고 필요할때만 읽어서 사용하면 편하다.
해당 정보들을 Java 클래스 파일에 지정을 해둬도 되지만, 정보가 변경되면 컴파일을 다시 해줘야 하는 등의 귀찮음이 따르므로
프로퍼티를 이용하는것을 추천한다.

나같은 경우 DB 접속정보나, 특정 모듈의 경로정보, 로그파일의 위치정보와 같은 내용을 프로퍼티에 입력하여 사용한다.

Java에서 프로퍼티 파일로는 텍스트 형식과 xml 형식이 있다. 나의 경우 예전부터 사용하던 방식이 텍스트 형식이라 해당 방식을 주로 사용한다.


일단 특정 위치에 properties 파일을 생성하자. 일반 텍스트 형식의 파일이면 되며 확장자는 .properties 이면 된다.


[config.properties]

MSG=Prop OK!


"항목명=내용" 으로 작성하면 되고 띄어쓰기에 주의한다.



[프로퍼티 읽기]

import java.io.FileInputStream;
import java.util.Properties;


public class PropReader {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		try{
			
			// 프로퍼티 파일 위치
			String propFile = "D:/Project/Arointech/RedisTest/src/config.properties";
			
			
			// 프로퍼티 객체 생성
			Properties props = new Properties();
			
			// 프로퍼티 파일 스트림에 담기
            FileInputStream fis = new FileInputStream(propFile);
            
            // 프로퍼티 파일 로딩
            props.load(new java.io.BufferedInputStream(fis));
            
            
            
            // 항목 읽기
            String msg = props.getProperty("MSG") ;
            
            
            // 콘솔 출력
            System.out.println(msg) ;
			
		}catch(Exception e){
			e.printStackTrace();
		}
		
		
		

	}

}