Unterschied zwischen Java System.getProperty und System.getenv?

Unterschied Zwischen Java System Getproperty Und System Getenv



Der ' System.getProperty() Die Methode ruft die spezifischen Systemeigenschaften ab, die der Java-Laufzeitumgebung oder der Systemkonfiguration entsprechen. Es bietet Informationen über die Java-Umgebung und die Betriebssysteme des Systems, auf dem es ausgeführt wird. Andererseits ist die „ System.getenv() Die Methode greift auf die spezifischen Umgebungsvariablen zu, die in der Betriebssystemumgebung definiert sind. Es enthält dynamische Informationen über das System und die aktuelle Benutzersitzung.

In diesem Blog wird der Unterschied zwischen den Java-Methoden System.getProperty() und System.getenv() erläutert.

Was ist die System.getProperty()-Methode in Java?

Der ' System.getProperty() Die Methode gibt den Wert zurück, der der bereitgestellten Systemeigenschaft zugeordnet ist. Es besteht aus einem „ Schlüsselwert ”Paarformat, wie sie vom Systemadministrator oder in Konfigurationsdateien definiert werden. Die Eigenschaft kann mit Hilfe der „ -D ”-Flag oder wenn die Eigenschaft nicht gefunden wird, wird das „ Null „wird zurückgegeben. Hier werden die standardmäßigen oder am häufigsten verwendeten Systemeigenschaften zusammen mit ihrer Beschreibung beschrieben Verknüpfung .







Einige der Systemeigenschaften werden im folgenden Codeausschnitt verwendet:



Einige der Systemeigenschaften werden im folgenden Codeausschnitt verwendet:



Klasse Elternteil {
//Initialisierung der Treibermethode
öffentlich statisch Leere hauptsächlich ( Zeichenfolge [ ] args ) {
Zeichenfolge Nutzername = System. getProperty ( 'Nutzername' ) ;
System. aus . println ( „Benutzername unter Verwendung der Systemeigenschaft:“ + Nutzername ) ;

Zeichenfolge Klassenpfad = System. getProperty ( „java.class.path“ ) ;
System. aus . println ( „Der aktuelle Klassenpfad vom Stammverzeichnis:“ + Klassenpfad ) ;

System. aus . println ( „Falsche Eigenschaft wird verwendet:“ + System. getProperty ( 'heim' ) ) ;

System. aus . println ( „Die JRE-Versionsinformationen:“ + System. getProperty ( „java.runtime.version“ ) ) ;
System. aus . println ( „Die Architektur des aktuellen Systembetriebssystems:“ + System. getProperty ( „os.arch“ ) ) ;
}
}

Beschreibung des obigen Codes:





  • Zunächst wird der tatsächliche Eigentümer oder Benutzer des Systems ermittelt, indem das „“ übergeben wird. Nutzername „Immobilie in der“ System.getProperty() ' Methode.
  • Als nächstes wird die Eigenschaft „ java.class.path „wird an „übergeben“ System.getProperty() ”-Methode zum Abrufen des Pfads der aktuellen Klasse aus dem Stammverzeichnis.
  • Dann ist die falsche Eigenschaft von „ heim ' ist bestanden,
  • Der ' System.getProperty() Die Methode zeigt „ Null ” zeigt an, dass die Eigenschaft nicht existiert.
  • Auf die gleiche Weise werden die Java Runtime-Version und die Systemarchitektur durch Übergabe des „ java.runtime.version ' Und ' os.arch ', bzw.

Die Ausgabe zeigt, dass die erforderlichen Werte für Systemeigenschaften mithilfe der Methode „System.getProperty()“ abgerufen wurden.



Was ist die System.getenv()-Methode in Java?

Der ' System.getenv() Die Methode gibt den entsprechenden Wert für die angegebene Umgebungsvariable zurück. Die zurückgegebenen Werte sind dynamisch und werden vom Systembetriebssystem oder vom Benutzer für die aktuelle Sitzung festgelegt. Wie bei der Methode „System.getProperty()“, wenn die Variable nicht gefunden wird oder keinen Wert enthält, wird die Methode „ Null „wird zurückgegeben.

Besuchen Sie zum Beispiel den folgenden Code:

Klasse rootClass {
//Initialisierung der Treibermethode
öffentlich statisch Leere hauptsächlich ( Zeichenfolge [ ] args ) {
System. aus . println ( „Abruf von Werten mit der System.getenv()-Methode“ ) ;

Zeichenfolge temporärerPfad = System. tenv ( „TEMP“ ) ;
System. aus . println ( „Der Pfad für den Ordner „Temporäre Dateien“ lautet: „ + temporärerPfad ) ;

Zeichenfolge Betriebssystem = System. tenv ( „NUMBER_OF_PROCESSORS“ ) ;
System. aus . println ( „Die Anzahl der Prozessoren im System enthält:“ + Betriebssystem ) ;

Zeichenfolge Windows-Verzeichnis = System. tenv ( „windir“ ) ;
System. aus . println ( „Anzeige des System-Root-Pfads –“ + Windows-Verzeichnis ) ;
}
}

Erklärung des obigen Codeblocks:

  • Zunächst wird die Klasse mit dem Namen „ rootClass ' und das ' System.getenv() „-Methode wird verwendet, um den Pfad des temporären Ordners zurückzugeben, indem die „ TEMP ” als Wert.
  • Als nächstes wird die Anzahl der Prozessoren und das Windows-Verzeichnis für das System abgerufen, indem „ NUMBER_OF_PROCESSORS ' Und ' windir ” zur Methode „System.getenv()“.

Nach der Zusammenstellung:

Die Ausgabe bestätigt, dass die erforderlichen Umgebungsvariablenwerte abgerufen wurden.

Unterschied zwischen Java System.getProperty und System.getenv

Der Unterschied zwischen den Methoden System.getProperty() und System.getenv() wird unten in der Tabelle beschrieben:

Begriff System.getProperty() System.getenv()
Zweck Es wird verwendet, um für die JVM spezifische Systemeigenschaften abzurufen. Es wird verwendet, um Umgebungsvariablen abzurufen, die für die Betriebssystemumgebung spezifisch sind.
Quelle Systemeigenschaften werden normalerweise als Befehlszeilenargumente festgelegt. Umgebungsvariablen werden in der Betriebssystemumgebung festgelegt.
Zugang Es kann sowohl Systemeigenschaften als auch Umgebungsvariablen abrufen. Es kann nur Umgebungsvariablen abrufen und erfordert bestimmte Schlüssel für die Variable.
Verwendung Es wird häufig verwendet, um Informationen über die JVM abzurufen, beispielsweise die Java-Version. Es wird häufig verwendet, um auf umgebungsspezifische Konfigurationen oder vertrauliche Informationen zuzugreifen.
Portabilität Es ist plattformunabhängig und kann über verschiedene Betriebssysteme hinweg konsistent aufgerufen werden. Variablen können zwischen verschiedenen Betriebssystemen variieren und unterschiedliche Verhaltensweisen aufweisen.

Abschluss

Der ' System.getProperty() Die Methode hat Zugriff auf Java-spezifische Eigenschaften und Systemkonfigurationen. Der ' System.getenv() ” greift auf Umgebungsvariablen zu, die im Betriebssystem definiert sind. Beide eignen sich jedoch zur Rückgabe systembezogener Informationen. Darüber hinaus dienen sie ähnlichen Zwecken zum Abrufen von Informationen über die Systemumgebung, arbeiten jedoch mit unterschiedlichen Datensätzen.