프로그램을 작성하다 보면 운영체제(OS)나 JVM 에 의존적인 정보를 알아야 할 때가 있습니다.
이때, System.getProperty(key) 메소드를 이용하여 각종 정보를 알수 있는데 key 부분에 알고자하는
키값을 넣으면 키에 해당하는 정보를 알려줍니다.
키=값 형태로 나타나 있는데 앞에 있는 키를 넣으면 뒤에있는 값이 나옵니다.
각자 시스템에 따라 다른값이 나옵니다.
예를들어 System.getProperty("java.vm.version"); 을 하면 1.5.0_18-b02 값이 반환됩니다.
import java.util.Properties;
import java.util.Enumeration;
public class Test {
public static void main(String[] args) {
Properties props = System.getProperties();
for(Enumeration en = props.propertyNames(); en.hasMoreElements();) {
String key = (String)en.nextElement();
String value = props.getProperty(key);
System.out.println(key + "=" + value);
}
}
}
* 나온 값들.
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
sun.boot.library.path=C:\Program Files\Java\jdk1.5.0_18\jre\bin
java.vm.version=1.5.0_18-b02
java.vm.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
path.separator=;
java.vm.name=Java HotSpot(TM) Client VM
file.encoding.pkg=sun.io
user.country=KR
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=Service Pack 3
java.vm.specification.name=Java Virtual Machine Specification
user.dir=C:\java\client
java.runtime.version=1.5.0_18-b02
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=C:\Program Files\Java\jdk1.5.0_18\jre\lib\endorsed
os.arch=x86
java.io.tmpdir=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\
line.separator=
java.vm.specification.vendor=Sun Microsystems Inc.
user.variant=
os.name=Windows XP
sun.jnu.encoding=MS949
java.library.path=C:\Program Files\Java\jdk1.5.0_18\bin;
java.specification.name=Java Platform API Specification
java.class.version=49.0
sun.management.compiler=HotSpot Client Compiler
os.version=5.1
user.home=C:\Documents and Settings\Administrator
user.timezone=
java.awt.printerjob=sun.awt.windows.WPrinterJob
file.encoding=MS949
java.specification.version=1.5
user.name=Administrator
java.vm.specification.version=1.0
sun.arch.data.model=32
java.home=C:\Program Files\Java\jdk1.5.0_18\jre
java.specification.vendor=Sun Microsystems Inc.
user.language=ko
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode, sharing
java.version=1.5.0_18
file.separator=\
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.desktop=windows
sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86
* 참고로 간혹 위에 없는 키값을 사용해서 당황해 하는 경우가 있습니다.
예를들어 위에는 전혀 없는 키값인데, System.getProperty("file.location.env"); 라면서 사용하는
경우가 있습니다.
이럴경우, JVM 의 VM arguments 부분을 살펴보면 다음과 같이 세팅되어 있습니다.
-Dfile.location.env="C:\file\upload"
JVM의 VM arguments 는 JVM을 구동할때, 필요한 여러가지 값을 세팅하는 것인데
-D하고 바로뒤에 키="값"을 세팅하면 프로그램내에서 System.getProperty("키"); 를 통해 값을 가져올
수 있습니다.
'Web Programing! > JAVA / JSP' 카테고리의 다른 글
[JSP] 다중업로드/다운로드 (0) | 2011.09.20 |
---|---|
[JSP] Tomcat5.5에서 Spring 사용시 JSTL이 제대로 표현이 안될 때 (0) | 2011.09.20 |
[JSP] excel파일 읽어오기 (0) | 2011.09.19 |
[JSP] response 객체에 HTML, javascript 코드 넣기 (0) | 2011.09.18 |
[JSP] RSS 만들기 - 초보 (0) | 2011.09.17 |
[JSP] javax.mail로 메일 전송시 한글 첨부파일명이 깨지는 경우 (0) | 2011.09.17 |
[JSP] jsp + 트위터 연동시 참고 사이트 (0) | 2011.09.17 |