Quelle est la différence entre les propriétés du système System.getProperties() et des variables d’environnement System.getenv() dans une JVM ?
Réponses
Trop de publicités?Les propriétés du système sont définies sur la ligne de commande java à l'aide de l' -Dpropertyname=value
de la syntaxe. Ils peuvent également être ajoutés au moment de l'exécution à l'aide de System.setProperty(name, value)
ou via les différents System.getProperties().load()
méthodes
Variables d'environnement sont définies dans le système d'exploitation, par exemple, sous linux, export HOME=/Users/myusername
windows SET WINDIR=C:\Windows
etc, et, à la différence de propriétés, peut pas être réglé au moment de l'exécution.
Je pense que la différence entre les deux se résume à l'accès. Les variables d'environnement système sont accessibles par n'importe quel processus et propriétés système java ne sont accessibles que par le processus, ils sont ajoutés.
Aussi Bohème dit, les variables d'environnement sont définies dans l'OS (cependant ils 'peut' être défini par le biais de java) et les propriétés du système sont passés comme des options de ligne de commande ou un ensemble via setProperty()
.