MENU

Java 시스템 프로퍼티를 보기 쉽게 출력

목차

자바 시스템 속성알파벳순으로 출력 System.getProperties()

자바시스템 속성의 키와 값을 알파벳순으로 보기 쉽게 출력하는 샘플 프로그램을 소개합니다.
일단, TreeMap에 격납하는 것에 의해, 알파벳순으로 재정렬하고 나서 출력하고 있습니다.

통상은 이하의 방법이 잘 소개되고 있습니다만, 값은 도중에 끊어지고 있어, 알파벳순으로 줄지어 있지 않기 때문에 매우 보기 힘들군요.

Properties props = System.getProperties();
props.list(System.out);
-- listing properties -- java.runtime.name=Java(TM) 2 Runtime Environment, Stand... sun.boot.library.path=C:\develop\Java\jdk1.5.0_08\jre\bin java.vm.version=1.5.0_08-b03 java.vm 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.os.patch.level=서비스 팩 2 java.vm.specification.name=Java user.dir=C:\apps\0-app java.runtime.version=1.5.0_08-b03 java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment java.endorsed.dirs=C:\develop\Java\jdk1.5.0_08 java.io.tmpdir=C:\DOCUME~1\***\LOCALS~1\Temp\ line.separator= java.vm.specification.vendor=Sun Microsystems Inc. user.variant= os.name=Windows XP sun.jnu.encoding=MS932 java.library.path=C:\develop\Java\jdk1.5.0_08\bin;.;C:\... java.specification.name=Java Platform API Specification java.class.version=49.0 sun.management.compiler=HotSpot Client Compiler os.version=5.1 user user.timezone= java.awt.printerjob=sun.awt.windows.WPrinterJob file.encoding=MS932 java.specification.version=1.5 user.name=**** java.class.path=C:\apps\0-app\bin;C:\apps\0-app\jre1 sun.arch.data.model=32 java.home=C:\develop\Java\jdk1.5.0_08\jre java.specification.vendor=Sun Microsystems Inc. user.language=en awt.toolkit=sun.awt.windows.WToolkit java.vm java.version=1.5.0_08 java.ext.dirs=C:\develop\Java\jdk1.5.0_08\jre\lib\ext sun.boot.class.path=C:\develop\Java\jdk1.5.0_08\jre\lib\r... java.vendor= java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport... sun.cpu.endian=little sun.io.unicode.encoding=UnicodeLittle sun.desktop=windows sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+.


샘플 프로그램

/**
 * システムプロパティのキーと値をアルファベット順に出力します。
 */
public static void outputSystemProperties() {
    Properties p = System.getProperties();
    TreeMap map = new TreeMap();
    map.putAll(p);
    Iterator itr = map.keySet().iterator();
    while (itr.hasNext()) {
        String key = (String)itr.next();
        String value = (String)map.get(key);
        System.out.println(key + "=" + value);
    }
}

실행 결과

◆실행예

public static void main(String[] args) { outputSystemProperties(); }

◆출력 결과

awt.toolkit=sun.awt.windows.WToolkit file.encoding=MS932 file.encoding.pkg=sun.io file.separator=\java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment java.awt.printerjob=sun.awt.windows.WPrinterJob java.class.path=C:\apps\0-app\bin;C:\apps\0-app\jre1.6.0\lib\rt.jar;C:\apps\0-app\sys\lib\bcprov-jdk14 java.endorsed.dirs=C:\develop\Java\jdk1.5.0_08\jre\lib\endorsed java.ext.dirs=C:\develop\Java\jdk1.5.0_08\jre\lib\ext java.home=C:\develop\Java\jdk1 java.io.tmpdir=C:\DOCUME~1\***\LOCALS~1\Temp\ java.library.path=C:\develop\Java\jdk1.5.0_08\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\develop\Java\jdk1.5.0_08\bin;C:\WINDOWS\system32;C:\WIND S;C:\WINDOWS\System32\Wbem;C:\ProgramFilesDevelop\TOOLS\ant-1.6.1\bin;C:\develop\eclipse32\extensions\tptp-4.2.0\agent-controller\\bin;C:\Program Files\QuickTime\QTSystem\ java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition java.runtime.version=1.5.0_08-b03 java.specification.name=Java Platform API Specification java.specification.vendor=Sun Microsystems Inc. java.specific java.vendor.url=http://java.sun.com/ java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi java.version=1.5.0_08 java.vm.info=mixed mode, sharing java.vm.name=Java HotSpotavaTM Machine Specification java.vm.specification.vendor=Sun Microsystems Inc. java.vm.specification.version=1.0 java.vm.vendor=Sun Microsystems Inc. java.vm.version=1.5.0_08-b03 line.separator= XP.arch=x86 os.name=Windows sun.arch.data.model=32 sun.boot.class.path=C:\develop\Java\jdk1.5.0_08\jre\lib\rt.jar;C:\develop\Java\jdk1. 5.0_08\jre\lib\i18n.jar;C:\develop\Java\jdk1.5.0_08\jre\lib\sunrsasign.jar;C:\develo p\Java\jdk1.5.0_08\jre\lib\jsse.jar;C:\develop\Java\jdk1.5.0_08\jre\lib\jce.jar;C:\d evelop\Java\jdk1.5.0_08\jre\lib\charsets.jar;C:\develop\Java\jdk1.5.0_08\jre\classes sun.boot.library.path=C:\develop\Java\jdk1.5.0_08\jre\bin sun.cpu.endian=little sun.cpu.isalist=pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86 sun.desk sun.io.unicode.encoding=UnicodeLittle sun.jnu.encoding=MS932 sun.management.compiler=HotSpot Client Compiler sun.os.patch.level=서비스 팩 2 user.country=KR user.dir=C:\apps\0-app user.home=C:\Domain user.name=*** user.timezone= user.variant=

모든 정보가 알파벳순으로 표시되고 있네요.
특히 java.class.path나 java.library.path등은 모두 표시되어 있지 않으면 문제 해결에 시간이 걸리니까요.

java.class.path=C:\apps\0-app\bin;C:\apps\0-app\jre1….

java.class.path=C:\apps\0-app\bin;C:\apps\0-app\jre1.6.0\lib\rt.jar;C:\apps\0-app\sys\lib\bcprov-jdk14-123.jar

요약

이 기사에서는 Java의 시스템 프로퍼티를 알파벳순으로 정리해, 보기 쉽게 출력하는 방법에 대해 설명합니다. 통상의 프로퍼티 출력 방법에서는, 정보가 도중에 끊어지거나 순서 부동으로 표시되기 때문에 보기 어렵습니다만,TreeMap를 이용하여 프로퍼티를 소트해 출력하는 것으로, 보다 알기 쉽게 됩니다. 구체적인 샘플 프로그램이 소개되고 Java 프로그래머가 시스템 프로퍼티를 효율적으로 확인할 수 있는 방법을 제공하고 있습니다.

Java 프로그래머로서의 스킬을 가지는 분에게는, 부업 안건이 매우 추천입니다. 왜냐하면 Java는 기업의 핵심 시스템과 웹 애플리케이션 개발에 널리 사용되고 있으며 수요가 높기 때문입니다. 부업으로서 Java를 활용함으로써 수입을 늘릴 뿐만 아니라, 스킬 업이나 새로운 기술의 습득도 가능합니다.

  • URL을(를) 확인했습니다!
목차