Razlika med Java System.getProperty in System.getenv?

Razlika Med Java System Getproperty In System Getenv



' System.getProperty() ” metoda pridobi specifične sistemske lastnosti, ki ustrezajo izvajalnemu okolju Java ali sistemski konfiguraciji. Ponuja informacije o okolju Java in operacijskih sistemih za sistem, v katerem se izvaja. Po drugi strani pa ' System.getenv() ” dostopa do specifičnih spremenljivk okolja, definiranih v okolju OS. Vsebuje dinamične informacije o sistemu in trenutni uporabniški seji.

Ta spletni dnevnik pojasnjuje razliko med metodama Java System.getProperty() in System.getenv().

Kaj je metoda System.getProperty() v Javi?

' System.getProperty() ” vrne vrednost, povezano s podano sistemsko lastnostjo. Sestavljen je iz ' ključ/vrednost ” pair format, kot jih določi skrbnik sistema ali v konfiguracijskih datotekah. Lastnost lahko nastavite s pomočjo “ -D ” ali če lastnost ni najdena, se nič ” se vrne. Tu so opisane privzete ali večinoma uporabljene lastnosti sistema skupaj z njihovim opisom povezava .







Nekatere lastnosti sistema so uporabljene v spodnjem delčku kode:



Nekatere lastnosti sistema so uporabljene v spodnjem delčku kode:



razred starš {
//Inicializacija metode gonilnika
javnosti statična praznina glavni ( Vrvica [ ] args ) {
Vrvica uporabniško ime = Sistem. getProperty ( 'uporabniško.ime' ) ;
Sistem. ven . println ( 'Uporabniško ime, ki uporablja lastnost sistema: ' + uporabniško ime ) ;

Vrvica classPath = Sistem. getProperty ( 'java.class.path' ) ;
Sistem. ven . println ( 'Trenutna pot razreda iz korenskega imenika: ' + classPath ) ;

Sistem. ven . println ( 'Uporabljena je napačna lastnost: ' + Sistem. getProperty ( 'dom' ) ) ;

Sistem. ven . println ( 'Podatki o različici JRE: ' + Sistem. getProperty ( 'java.runtime.version' ) ) ;
Sistem. ven . println ( 'Arhitektura trenutnega sistemskega OS:' + Sistem. getProperty ( 'os.arch' ) ) ;
}
}

Opis zgornje kode:





  • Prvič, dejanski lastnik ali uporabnik sistema se pridobi s posredovanjem » uporabniško.ime » lastnina v » System.getProperty() ” metoda.
  • Naprej lastnina “ java.class.path « se posreduje v » System.getProperty() ” za pridobitev poti trenutnega razreda iz korenskega imenika.
  • Nato je napačna lastnost ' domov ” je mimo,
  • ' System.getProperty() ' metoda bo prikazala ' nič «, kar pomeni, da lastnina ne obstaja.
  • Na enak način se različica Java Runtime in sistemska arhitektura pridobita s posredovanjem » java.runtime.version « in » os.arh «, oz.

Izhod kaže, da so bile zahtevane vrednosti sistemskih lastnosti pridobljene s pomočjo metode »System.getProperty()«.



Kaj je metoda System.getenv() v Javi?

' System.getenv() ” vrne ustrezno vrednost za navedeno spremenljivko okolja. Vrnjene vrednosti so dinamične in takšne, kot jih nastavi sistemski operacijski sistem ali uporabnik za trenutno sejo. Tako kot metoda »System.getProperty()«, če spremenljivka ni najdena ali ne vsebuje vrednosti, se » nič ” se vrne.

Na primer, obiščite spodnjo kodo:

razred rootClass {
//Inicializacija metode gonilnika
javnosti statična praznina glavni ( Vrvica [ ] args ) {
Sistem. ven . println ( 'Pridobivanje vrednosti z uporabo metode System.getenv()' ) ;

Vrvica temporaryPath = Sistem. tenv ( 'TEMP' ) ;
Sistem. ven . println ( 'Pot do mape začasnih datotek je: ' + temporaryPath ) ;

Vrvica operacijski sistem = Sistem. tenv ( 'NUMBER_OF_PROCESSORS' ) ;
Sistem. ven . println ( 'Sistem števila procesorjev vsebuje: ' + operacijski sistem ) ;

Vrvica windowsDirectory = Sistem. tenv ( 'windir' ) ;
Sistem. ven . println ( 'Prikaz korenske poti sistema - ' + windowsDirectory ) ;
}
}

Razlaga zgornjega kodnega bloka:

  • Najprej se ustvari razred z imenom ' rootClass ' in ' System.getenv() ' se uporablja za vrnitev poti začasne mape s posredovanjem ' TEMP « kot vrednost.
  • Nato se pridobi število procesorjev in imenik Windows za sistem s posredovanjem » NUMBER_OF_PROCESSORS « in » windir ” v metodo “System.getenv()”.

Po kompilaciji:

Izhod potrjuje, da so zahtevane vrednosti spremenljivke okolja pridobljene.

Razlika med Java System.getProperty in System.getenv

Razlika med metodama System.getProperty() in System.getenv() je opisana spodaj v tabeli:

Izraz System.getProperty() System.getenv()
Namen Uporablja se za pridobivanje sistemskih lastnosti, specifičnih za JVM. Uporablja se za pridobivanje spremenljivk okolja, specifičnih za okolje operacijskega sistema.
Vir Lastnosti sistema so običajno nastavljene kot argumenti ukazne vrstice. Spremenljivke okolja so nastavljene v okolju OS.
Dostop Pridobi lahko sistemske lastnosti in spremenljivke okolja. Pridobi lahko samo spremenljivke okolja in zahteva posebne ključe za spremenljivko.
Uporaba Običajno se uporablja za pridobivanje informacij o JVM, kot je različica Java. Običajno se uporablja za dostop do konfiguracij, specifičnih za okolje, ali občutljivih informacij.
Prenosljivost Je neodvisen od platforme in do njega je mogoče dosledno dostopati v različnih operacijskih sistemih. Spremenljivke se lahko med različnimi operacijskimi sistemi razlikujejo in se lahko različno obnašajo.

Zaključek

' System.getProperty() ” ima dostop do lastnosti in konfiguracije sistema, specifičnih za Javo. ' System.getenv() ” dostopa do spremenljivk okolja, ki so definirane v operacijskem sistemu. Vendar sta oba primerna za vračanje informacij, povezanih s sistemom. Poleg tega imajo podobne namene za pridobivanje informacij o sistemskem okolju, vendar delujejo na različnih nizih podatkov.