Database

<DB 맛보기> properties 파일을 상대 경로로 빠르게 찾자

춘햄 2021. 3. 30. 16:05

DB와 프로젝트를 연동하기 위해서는 드라이버나 사용자 정보를 가지고 있는 properties 파일이 필요하다. 

기본적으로 properties 파일은 연동 작업을 할 클래스와 같은 위치에 생성하는데, 같은 위치에 있는 properties 파일을 절대 경로로 읽게끔 코드를 작성하면 그 코드는 클라이언트 측에서 사용할 수 없기 때문에 반드시 상대 경로로 읽어와야 한다. 

 

우선, properties 파일의 예제는 다음과 같다.

 

더보기

<database.properties>

driver = oracle.jdbc.OracleDriver
url = jdbc.oracle:thin@localhost:1521:orcl
username = scott
password = tiger

 

그리고, 데이터베이스를 연동하는 작업을 하는 클래스는 다음과 같이 정의하여 상대 경로를 이용하여 properties 파일에 있는 정보를 간편하게 읽어올 수 있도록 만드는 것이 중요하다. 더 자세한 과정은 추후에 DB를 가지고 실제 프로젝트를 시작하기 직전에 포스팅할 예정이다. 

 

package com.choonham.map.properties;

import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;

public class PropertiesTestClass {

	public PropertiesTestClass() {
		// TODO Auto-generated constructor stub
	}
	
	public static void propertiesTest() {
		String path = PropertiesTestClass.class.getResource("database.properties").getPath();     
		//현재 클래스가 있는 위치에 있는 "database.properties" 파일의 경로를 반환받는다. **중요**
		
		Properties p = new Properties();   //유지보수를 용이하게 할 용도 / 환경 설정 문서
		
		try {
			FileReader fr = new FileReader(path);
			p.load(fr);
			
			String driverName = p.getProperty("driver");
			System.out.println(driverName);
			System.out.println(p.getProperty("url"));
			System.out.println(p.getProperty("username"));
			System.out.println(p.getProperty("password"));
			
		} catch(IOException e) {
			System.out.println(e.getMessage());
		}
		
		
	}

}