Aquest bloc explica la diferència entre els mètodes Java System.getProperty() i System.getenv().
Què és el mètode System.getProperty() a Java?
El ' System.getProperty() ” El mètode retorna el valor associat a la propietat del sistema proporcionada. Consta d'un ' clau/valor ” format de parella, tal com els defineix l'administrador del sistema o als fitxers de configuració. La propietat es pot configurar amb l'ajuda del ' -D ” o si no es troba la propietat, el “ nul ” es retorna. A continuació es descriuen les propietats del sistema predeterminades o més utilitzades juntament amb la seva descripció enllaç .
Algunes de les propietats del sistema s'utilitzen al fragment de codi següent:
Algunes de les propietats del sistema s'utilitzen al fragment de codi següent:
classe pare {
//Inicialitzant el mètode del controlador
públic estàtica buit principal ( Corda [ ] args ) {
Corda nom d'usuari = Sistema. getProperty ( 'user.name' ) ;
Sistema. fora . imprimirln ( 'El nom d'usuari utilitzant la propietat del sistema:' + nom d'usuari ) ;
Corda classPath = Sistema. getProperty ( 'java.class.path' ) ;
Sistema. fora . imprimirln ( 'La ruta de classe actual des del directori arrel: ' + classPath ) ;
Sistema. fora . imprimirln ( 'S'utilitza una propietat incorrecta:' + Sistema. getProperty ( 'casa' ) ) ;
Sistema. fora . imprimirln ( 'Informació de la versió de JRE:' + Sistema. getProperty ( 'java.runtime.version' ) ) ;
Sistema. fora . imprimirln ( 'L'arquitectura del sistema operatiu actual del sistema:' + Sistema. getProperty ( 'os.arch' ) ) ;
}
}
Descripció del codi anterior:
- En primer lloc, el propietari o usuari real del sistema es recupera passant el ' user.name ' propietat a ' System.getProperty() ” mètode.
- A continuació, la propietat ' java.class.path ' es passa a ' System.getProperty() ” mètode per recuperar la ruta de la classe actual des del directori arrel.
- Aleshores, la falsa propietat de ' casa ” s'aprova,
- El ' System.getProperty() El mètode ' mostrarà ' nul ” indicant que la propietat no existeix.
- De la mateixa manera, la versió de Java Runtime i l'arquitectura del sistema s'estan recuperant passant el ' java.runtime.version ' i ' os.arch ”, respectivament.
La sortida mostra que els valors necessaris per a les propietats del sistema s'han recuperat amb l'ajuda del mètode 'System.getProperty()'.
Què és el mètode System.getenv() a Java?
El ' System.getenv() ” retorna el valor corresponent per a la variable d'entorn especificada. Els valors retornats són dinàmics i tal com els estableix el sistema operatiu del sistema o l'usuari per a la sessió actual. Igual que el mètode 'System.getProperty()' si la variable no es troba o no conté cap valor, el ' nul ” es retorna.
Per exemple, visiteu el codi següent:
classe rootClass {//Inicialitzant el mètode del controlador
públic estàtica buit principal ( Corda [ ] args ) {
Sistema. fora . imprimirln ( 'Recuperació de valors mitjançant el mètode System.getenv()' ) ;
Corda temporaryPath = Sistema. tenv ( 'TEMP' ) ;
Sistema. fora . imprimirln ( 'La ruta de la carpeta de fitxers temporals és: ' + temporaryPath ) ;
Corda sistema operatiu = Sistema. tenv ( 'NUMBER_OF_PROCESSORS' ) ;
Sistema. fora . imprimirln ( 'El nombre de processadors del sistema conté: ' + sistema operatiu ) ;
Corda windowsDirectory = Sistema. tenv ( 'windir' ) ;
Sistema. fora . imprimirln ( 'Mostrar la ruta arrel del sistema -' + windowsDirectory ) ;
}
}
Explicació del bloc de codi anterior:
- Primer, es crea la classe amb el nom ' rootClass ' i la ' System.getenv() ” s'utilitza per retornar el camí de la carpeta temporal passant el “ TEMP ” com a valor.
- A continuació, es recupera el nombre de processadors i el directori de Windows per al sistema passant ' NUMBER_OF_PROCESSORS ' i ' windir ” al mètode “System.getenv()”, respectivament.
Després de la compilació:
La sortida confirma que s'han recuperat els valors de variable d'entorn necessaris.
Diferència entre Java System.getProperty i System.getenv
La diferència entre els mètodes System.getProperty() i System.getenv() es descriu a continuació a la taula:
Terme | System.getProperty() | System.getenv() |
---|---|---|
Propòsit | S'utilitza per recuperar propietats del sistema específiques de la JVM. | S'utilitza per recuperar variables d'entorn específiques de l'entorn del sistema operatiu. |
Font | Les propietats del sistema s'estableixen normalment com a arguments de línia d'ordres. | Les variables d'entorn s'estableixen a l'entorn del sistema operatiu. |
Accés | Pot recuperar tant les propietats del sistema com les variables d'entorn. | Només pot recuperar variables d'entorn i requereix claus específiques per a la variable. |
Ús | S'utilitza habitualment per recuperar informació sobre la JVM, com ara la versió de Java. | S'utilitza habitualment per accedir a configuracions específiques de l'entorn o informació sensible. |
Portabilitat | És independent de la plataforma i es pot accedir de manera coherent en diferents sistemes operatius. | Les variables poden variar entre els diferents sistemes operatius i poden tenir diferents comportaments. |
Conclusió
El ' System.getProperty() ” El mètode té accés a propietats específiques de Java i a la configuració del sistema. El ' System.getenv() ” accedeix a les variables d'entorn que es defineixen al sistema operatiu. Tanmateix, tots dos són adequats per retornar informació relacionada amb el sistema. A més, tenen propòsits similars per recuperar informació sobre l'entorn del sistema, però operen amb diferents conjunts de dades.