본문 바로가기

Languages/Java

JAVA - System.getProperty(String key, String def)


System.getProperty("framework.conf", file.getAbsolutePath());

public staticStringgetProperty(StringkeyStringdef)

Parameters:

key- the name of the system property.
def- a default value.
Returns:
the string value of the system property, or the default value if there is no property with that key.
Throws:
SecurityException- if a security manager exists and itscheckPropertyAccessmethod doesn't allow access to the specified system property.
NullPointerException- ifkeyisnull.
IllegalArgumentException- ifkeyis empty.
See Also:
setProperty(java.lang.String, java.lang.String),SecurityManager.checkPropertyAccess(java.lang.String),getProperties()

시스템 프로퍼티란 시스템 환경에 관한 정보를 말한다.

System 클래스에 있는 getProperty() 메서드를 이용하면,

현재 사용하고 있는 환경 정보를 얻을 수 있다.

System 클래스를 이용하기 위해서는 java.util 패키지를 임포트 한다.

import java.util.*;

.

.

String version = System.getProperty("java.version");

주요 프로퍼티는 아래와 같다.

프로퍼티 : 의미 : 표시 

java.version

Java 의 버전 : 1.4.2_13

java.vendor

Java 의 벤더(공급자) : Sun Microsystems Inc.

java.vendor.url

Java 의 벤더의 URL : http://java.sun.com

java.home

Java 를 인스톨한 디렉토리 : c:\j2sdk1.4.2_13

java.class.version

Java 클래스의 버전 : 48

java.class.path

Java 클래스가 존재하는 경로 : c:\Java

java.ext.dir

확장기능 클래스를 포함하는 디렉토리 : null (미설정의 경우)

os.name

OS 의 이름 : Windows XP

os.arch

OS 의 아키텍처 : x86

os.version

OS 의 버전 : 5.1

file.separator

파일을 구분하는 문자 : \(Unix 에서는 /)

path.separator

경로를 구분하는 문자 : (Unix 에서는 :)

line.separator

행을 구분하는 문자(개행코드) : \n

user.name

사용자 계정 : Na

user.home

사용자 홈 디렉토리 : c:\Document and Settings\Na

user.dir

현재 작업 디렉토리 : c:\Java

[출처] http://kazeonme.springnote.com/pages/3715269

아래는 직접 실행해본 예제 소스와 결과화면입니다.

[소스]

System.out.println("java.version ["+System.getProperty("java.version")+"]");

System.out.println("java.vendor ["+System.getProperty("java.vendor")+"]");

System.out.println("java.vendor.url ["+System.getProperty("java.vendor.url")+"]");

System.out.println("java.home ["+System.getProperty("java.home")+"]");

System.out.println("java.class.version ["+System.getProperty("java.class.version")+"]");

System.out.println("java.class.path ["+System.getProperty("java.class.path")+"]");

System.out.println("java.ext.dir ["+System.getProperty("java.ext.dir")+"]");

System.out.println("os.name ["+System.getProperty("os.name")+"]");

System.out.println("os.arch ["+System.getProperty("os.arch")+"]");

System.out.println("os.version ["+System.getProperty("os.version")+"]");

System.out.println("file.separator ["+System.getProperty("file.separator")+"]");

System.out.println("path.separator ["+System.getProperty("path.separator")+"]");

System.out.println("line.separator ["+System.getProperty("line.separator")+"]");

System.out.println("user.name ["+System.getProperty("user.name")+"]");

System.out.println("user.home ["+System.getProperty("user.home")+"]");

System.out.println("user.dir ["+System.getProperty("user.dir")+"]");

[결과]

java.version [1.6.0]

java.vendor [Sun Microsystems Inc.]

java.vendor.url [http://java.sun.com/]

java.home [D:\02_Develop\00_ {생략}inam_FB3\01_eclipse\jdk160\jre]

java.class.version [50.0]

java.class.path [D:\04_Project\01_...{이하 생략}\-6.0.14\lib\tomcat-i18n-{..생략..}qldb.jar]

java.ext.dir [null]

os.name [Windows Vista]

os.arch [x86]

os.version [6.1]

file.separator [\]

path.separator [;]

line.separator []

user.name [WebDeveloper]

user.home [C:\Users\WebDeveloper]

user.dir [D:\04_Project\01_...{비밀}\01_source\HsqlServletSample]