Ortam Değişkenleri nedir?
Her bilgisayar programlama dili, programlar tarafından kullanılacak bilgileri içeren benzersiz bellek konumlarını tahsis eden değişkenler ve sabitler içerir. Sabit değerler değiştirilemez ancak değişkenin değeri değiştirilebilir. Ortam değişkenleri, değeri programın dışında belirlenen anahtar/değer çiftidir ve bunların referansı her zaman program tarafından kullanılabilir. Hem anahtar hem de değer dizelerdir. Ortam değişkenlerini ayarlama ve kullanma kuralları, işletim sistemleri ve komut satırı yorumlayıcıları arasında her zaman farklılık gösterir. Sistemde çalışan her uygulama için her zaman küresel olarak kullanılabilirler.Örnek
PATH = "C:\\WINDOWS\system32;"
Burada Yol , programın dışında ayarlanan ancak pencerelerde çalışan her program için kullanılabilen ortam değişkenidir.
Kullanım Örneği
Bildiğimiz gibi, programdaki her değişikliğin yürütülmesi veya sunucuda yeniden konuşlandırılması gerekir, bu da üretimde istenmeyen yan etkilere neden olabilir. Bu nedenle, ortam değişkenlerini tanıtmanın temel amacı, bu yürütmeyi ve konuşlandırmayı tekrar tekrar kısıtlamaktır.Java'da Ortam Değişkenleri Nasıl Elde Edilir?
Java'da ortam değişkenlerinin nasıl alınacağını görelim. Java, Java programında ortam değişkenlerini almamız için bize 2 yol sağlar.-
System.getenv()
-
System.getProperty()
System.getenv()
System.getenv () yöntemi, tüm ortam değişkenlerini getirmek için kullanılır, ancak parametre olarak belirli bir anahtar adı sağlanırsa, değerini getirir. java.lang.System.getenv() her zaman tüm kullanılabilir ortam değişkenlerinin dize eşlemesini döndürür.beyanname
public static String getenv(String name)
Burada name, değere ihtiyacımız olan anahtarı belirtmek için kullanılan parametredir.
Geri dönmek
Sağlanan parametre herhangi bir anahtarla ilişkili değilse, anahtarın değerini veya null değerini döndürür. Parametre iletilmezse, mevcut tüm anahtar/değer çiftlerini döndürür.Örnek
import java.util.Map;
public class SystemGetEnvDemo {
public static void main(String[] args) {
// getting value for environment variable "PATH"
System.out.print("System.getenv(PATH) = ");
System.out.println(System.getenv("PATH"));
// getting value for environment variable "TEMP" resulting in null
System.out.print("System.getenv(TEMP) = ");
System.out.println(System.getenv("TEMP"));
//getting all environment variables using System.getenv()
Map<String, String> env = System.getenv();
for (String envName : env.keySet()) {
System.out.format("%s=%s%n",
envName,
env.get(envName));
}
}
}
Çıktı
System.getenv(PATH) = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin System.getenv(TEMP) = null PATH=/usr/local /sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PROGRAMIZ_COMPILER_SERVICE_HOST=10.0.10.151 KUBERNETES_PORT=tcp://10.0.0.1:443 PROGRAMIZ_COMPILER_PORT=tcp://10.0.10.151 :80 TERM=xterm PROGRAMIZ_COMPILER_WEB_UI_SEVICE_PORT_80_TCP_PROTO=tcp KUBERNETES_SERVICE_HOST=10.0.0.1 PS1= PROGRAMIZ_COMPILER_WEB_UI_SEVICE_PORT_80_TCP_PORT=80 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_PORT_80_TCP_AD DR=10.0.14.233 PROGRAMIZ_COMPILER_PORT_80_TCP=tcp://10.0.10.151:80 PROGRAMIZ_COMPILER_PORT_80_TCP_PROTO=tcp PWD=/app KUBERNETES_PORT_443_TCP=tcp://10.0.0.1 :443 PROGRAMIZ_COMPILER_PORT_80_TCP_ADDR=10.0.10.151 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_PORT=tcp://10.0.14.233:80 KUBERNETES_PORT_443_TCP_ADDR=10.0.0.1 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_SERVICE_ HOST=10.0.14.233 PROGRAMIZ_COMPILER_PORT_80_TCP_PORT=80 KUBERNETES_PORT_443_TCP_PROTO=tcp KUBERNETES_SERVICE_PORT=443 PROGRAMIZ_COMPILER_SERVICE_PORT=80 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_PORT_80_TCP=tcp://10.0.14.2 33:80 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_SERVICE_PORT=80 HOSTNAME=programiz-compiler-deployment-58bfd77477-dtlq8 KUBERNETES_PORT_443_TCP_PORT=443 KUBERNETES_SERVICE_PORT_HTTPS=443 HOME=/home/compiler
İşletim sisteminize bağlı olarak farklı bir çıktı alabilirsiniz.
System.getProperty()
Bu yönteme parametre olarak iletilen belirtilen anahtarın değerini almak için Java'da java.lang.System.getProperty() işlevini de kullanabiliriz . Bu yöntem, sistem özelliklerini, yani yerel sistem ve yapılandırmalar hakkındaki bilgileri almak için kullanılır. Ortam değişkeni java'da bir sistem özelliği olarak mevcutsa, platformdan bağımsız bir şekilde değer elde etmek için System.getProperty()'yi kullanmak daha iyidir. Özelliklerin değeri çalışma zamanında değiştirilebilir, ancak ortam değişkenlerinde durum böyle değildir.beyanname
public String getProperty(String name)
Burada name, değere ihtiyacımız olan anahtarı belirtmek için kullanılan parametredir.
Geri dönmek
Anahtarın değerini veya null değerini döndürür.Örnek
import java.lang.*;
import java.util.Properties;
public class SystemGetPropertyDemo {
public static void main(String[] args)
{
// getting username system property
// using System.getProperty in Java
System.out.println("user.name: " + System.getProperty("user.name"));
// getting property with key home resulting in null
// calling system.getproperty()
System.out.println("home: " + System.getProperty("home"));
// getting name of Operating System
System.out.println("os.name: " + System.getProperty("os.name"));
}
}
Çıktı
kullanıcı.adı: derleyici ana sayfası: boş os.adı: Linux
GO TO FULL VERSION