처음에 멋도 모르고 자바 프로그램을 만들다가 만들다 보니 환경 변수를 하드 코딩 해버렸다. ㅡㅡ;
제길... 그러면 환경이 바뀔때 마다 프로그램 코드를 새로 수정해야 한다는...
이런 무식한 방법이..
암튼 이래저래 알게된 ClassLoader
java.util.Properties 속성을 이용해서
.Properties 파일을 만들어 환경 변수를 입력하고 ClassLoader로 읽어 들일 수 있다는 말씀
예로 들면 test.Properties 파일을 만들고
이 내용은 일단 요렇게
name W.C.
color white
이렇게 작성하고 저장 한다음!
그 환경 파일을 실행 파일을 만드셨다면 .jar파일이 있는 같은 폴더에 복사
아니면 bin폴더에 복사!
이제 코딩을 해보면
try
{
제길... 그러면 환경이 바뀔때 마다 프로그램 코드를 새로 수정해야 한다는...
이런 무식한 방법이..
암튼 이래저래 알게된 ClassLoader
java.util.Properties 속성을 이용해서
.Properties 파일을 만들어 환경 변수를 입력하고 ClassLoader로 읽어 들일 수 있다는 말씀
예로 들면 test.Properties 파일을 만들고
이 내용은 일단 요렇게
name W.C.
color white
이렇게 작성하고 저장 한다음!
그 환경 파일을 실행 파일을 만드셨다면 .jar파일이 있는 같은 폴더에 복사
아니면 bin폴더에 복사!
이제 코딩을 해보면
try
{
Properties env = new Properties();
ClassLoader cl;
cl = Thread.currentThread().getContextClassLoader();
if( cl == null )
cl = ClassLoader.getSystemClassLoader();
URL url = cl.getResource("");
//여기서 괄호 안에 url을 지정해 주면 지정한 폴더에 Properties파일을 복사해야 합니다.
FileInputStream fis = new FileInputStream(url.getPath()+"\\test.Properties");
env.load(new java.io.BufferedInputStream(fis));
String name=env.getProperty("name");
String color = env.getProperty("color");
ClassLoader cl;
cl = Thread.currentThread().getContextClassLoader();
if( cl == null )
cl = ClassLoader.getSystemClassLoader();
URL url = cl.getResource("");
//여기서 괄호 안에 url을 지정해 주면 지정한 폴더에 Properties파일을 복사해야 합니다.
FileInputStream fis = new FileInputStream(url.getPath()+"\\test.Properties");
env.load(new java.io.BufferedInputStream(fis));
String name=env.getProperty("name");
String color = env.getProperty("color");
.....
요렇게 하면 환경변수에 있는 값들을 불러 올 수 있죠
요렇게 하면 환경변수에 있는 값들을 불러 올 수 있죠
'나의 창고 > JAVA' 카테고리의 다른 글
이클립스에서 awt 사용시 한글 깨짐 현상 해결 방법 (0) | 2011.05.09 |
---|---|
오라클 테이블 만들기 (0) | 2009.09.04 |
JAVA 파일 읽을 때 필터링 (0) | 2009.08.10 |
JAVA 폴더에 있는 파일 정열하여 가져 오는 법 (0) | 2009.08.10 |
JAVA 스레드 (0) | 2009.08.09 |