Propiedades del sistema Java y variables de entorno
Cuál es la diferencia entre las propiedades del sistema Sistema.GetProperties () y variables de entorno System.getenv () en una JVM?
2 answers
Creo que la diferencia entre los dos se reduce al acceso. Las variables de entorno del sistema son accesibles por cualquier proceso y las propiedades del sistema Java solo son accesibles por el proceso al que se agregan.
También como Bohemian indicó, las variables env se establecen en el sistema operativo (sin embargo, se pueden establecer a través de Java) y las propiedades del sistema se pasan como opciones de línea de comandos o se establecen a través de setProperty()
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-13 07:57:53
Propiedades del sistema se establecen en la línea de comandos Java utilizando la sintaxis
-Dpropertyname=value
. También se pueden agregar en tiempo de ejecución usandoSystem.setProperty(String key, String value)
o a través de los diversosSystem.getProperties().load()
métodos.
Para obtener una propiedad específica del sistema puede usarSystem.getProperty(String key)
oSystem.getProperty(String key, String def)
.Variables de entorno se establecen en el sistema operativo, por ejemplo, en Linux
export HOME=/Users/myusername
o en WindowsSET WINDIR=C:\Windows
etc, y, a diferencia de las propiedades, puede no se establece en tiempo de ejecución.
Para obtener una variable de entorno específica puede usarSystem.getenv(String name)
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-13 08:41:59