Разница между Java System.getProperty и System.getenv?

Raznica Mezdu Java System Getproperty I System Getenv



System.getProperty() » извлекает определенные системные свойства, соответствующие среде выполнения Java или конфигурации системы. Он предлагает информацию о среде Java и операционных системах для системы, в которой он выполняется. С другой стороны, « Система.getenv() ” обращается к определенным переменным среды, определенным в среде ОС. Он содержит динамическую информацию о системе и текущем сеансе пользователя.

В этом блоге объясняется разница между методами Java System.getProperty() и System.getenv().

Что такое метод System.getProperty() в Java?

System.getProperty() » возвращает значение, связанное с предоставленным системным свойством. Он состоит из « ключ/значение ” парный формат, как они определены системным администратором или в конфигурационных файлах. Свойство можно установить с помощью « ' или, если свойство не найдено, ' нулевой » возвращается. Системные свойства по умолчанию или чаще всего используемые вместе с их описанием описаны в этом связь .







Некоторые свойства системы используются в приведенном ниже фрагменте кода:



Некоторые свойства системы используются в приведенном ниже фрагменте кода:



сорт родитель {
//Инициализация метода драйвера
публичный статический пустота основной ( Нить [ ] аргументы ) {
Нить имя пользователя '=' Система. получить свойство ( 'имя пользователя' ) ;
Система. вне . печать ( 'Имя пользователя, использующее системное свойство: ' + имя пользователя ) ;

Нить путь к классу '=' Система. получить свойство ( 'java.класс.путь' ) ;
Система. вне . печать ( «Текущий путь к классу из корневого каталога:» + путь к классу ) ;

Система. вне . печать ( 'Использовано неверное свойство:' + Система. получить свойство ( 'дом' ) ) ;

Система. вне . печать ( 'Информация о версии JRE: ' + Система. получить свойство ( 'java.runtime.версия' ) ) ;
Система. вне . печать ( «Архитектура текущей системной ОС:» + Система. получить свойство ( 'ос.арх' ) ) ;
}
}

Описание приведенного выше кода:





  • Во-первых, реальный владелец или пользователь системы извлекается путем передачи « имя пользователя ” собственность в “ System.getProperty() метод.
  • Далее свойство « java.class.path » передается в « System.getProperty() ”, чтобы получить путь к текущему классу из корневого каталога.
  • Тогда ложное свойство « дом ' передается,
  • System.getProperty() ” метод отобразит “ нулевой ” указывает на то, что свойство не существует.
  • Точно так же версия среды выполнения Java и системная архитектура извлекаются путем передачи « java.runtime.версия ' и ' os.arch ', соответственно.

Вывод показывает, что необходимые значения для системных свойств были получены с помощью метода System.getProperty().



Что такое метод System.getenv() в Java?

Система.getenv() » возвращает соответствующее значение для указанной переменной среды. Возвращаемые значения являются динамическими и устанавливаются операционной системой системы или пользователем для текущего сеанса. Подобно методу «System.getProperty()», если переменная не найдена или не содержит значения, « нулевой » возвращается.

Например, посетите приведенный ниже код:

сорт корневой класс {
//Инициализация метода драйвера
публичный статический пустота основной ( Нить [ ] аргументы ) {
Система. вне . печать ( «Получение значений с использованием метода System.getenv()» ) ;

Нить временный путь '=' Система. тенв ( 'ТЕМП' ) ;
Система. вне . печать ( 'Путь к папке временных файлов: ' + временный путь ) ;

Нить Операционная система '=' Система. тенв ( 'NUMBER_OF_PROCESSORS' ) ;
Система. вне . печать ( 'Система с количеством процессоров содержит: ' + Операционная система ) ;

Нить windowsDirectory '=' Система. тенв ( 'виндир' ) ;
Система. вне . печать ( 'Отображение системного корневого пути -' + windowsDirectory ) ;
}
}

Объяснение приведенного выше блока кода:

  • Сначала создается класс с именем « корневой класс ” и “ Система.getenv() ” используется для возврата пути к временной папке путем передачи “ ТЕМП » как ценность.
  • Затем количество процессоров и каталог Windows для системы извлекается путем передачи « NUMBER_OF_PROCESSORS ' и ' ветер ” в метод “System.getenv()” соответственно.

После компиляции:

Выходные данные подтверждают, что требуемые значения переменных среды получены.

Разница между Java System.getProperty и System.getenv

Разница между методами System.getProperty() и System.getenv() описана ниже в таблице:

Срок System.getProperty() Система.getenv()
Цель Он используется для получения системных свойств, специфичных для JVM. Он используется для получения переменных среды, специфичных для среды операционной системы.
Источник Системные свойства обычно задаются как аргументы командной строки. Переменные среды задаются в среде ОС.
Доступ Он может извлекать как системные свойства, так и переменные среды. Он может извлекать только переменные среды и требует определенных ключей для переменной.
Применение Он обычно используется для получения информации о JVM, например о версии Java. Он обычно используется для доступа к конфигурациям среды или конфиденциальной информации.
Портативность Он не зависит от платформы, и к нему можно последовательно обращаться в разных операционных системах. Переменные могут различаться в разных операционных системах и могут иметь разное поведение.

Заключение

System.getProperty() ” имеет доступ к специфичным для Java свойствам и конфигурации системы. “ Система.getenv() ” обращается к переменным среды, которые определены в операционной системе. Однако оба подходят для возврата системной информации. Более того, они имеют схожие цели для получения информации о системной среде, но работают с разными наборами данных.