CodeGym /Java Blog /Random /Kumuha ng mga variable ng Environment sa Java
John Squirrels
Antas
San Francisco

Kumuha ng mga variable ng Environment sa Java

Nai-publish sa grupo

Ano ang mga variable ng kapaligiran?

Ang bawat computer programming language ay naglalaman ng mga variable at constants na naglalaan ng mga natatanging lokasyon ng memorya, na naglalaman ng impormasyon na gagamitin ng mga programa. Ang mga patuloy na halaga ay hindi nababago ngunit ang halaga ng variable ay maaaring mabago. Ang mga variable ng kapaligiran ay ang key/value pair na ang value ay nakatakda sa labas ng program at ang kanilang reference ay palaging available sa program anumang oras. Parehong mga string ang key at value. Ang mga kumbensyon para sa pagtatakda at paggamit ng mga variable ng kapaligiran ay palaging naiiba sa pagitan ng mga operating system at command line interpreter. Palagi silang magagamit sa buong mundo sa bawat application na tumatakbo sa system.

Halimbawa


PATH = "C:\\WINDOWS\system32;"
Dito, ang Path ay ang environment variable na itinakda sa labas ng program ngunit available sa bawat program na tumatakbo sa mga bintana.

Use Case

Tulad ng alam natin na ang bawat pagbabago sa programa ay kailangang isagawa o muling i-deploy sa server na maaaring magdulot ng mga hindi gustong epekto sa produksyon. Kaya ang pangunahing layunin ng pagpapakilala ng mga variable ng kapaligiran ay upang paghigpitan ang pagpapatupad at pag-deploy na ito nang paulit-ulit.

Paano Kumuha ng Mga Variable ng Kapaligiran sa Java?

Tingnan natin kung paano makakuha ng mga variable ng kapaligiran sa java. Ang Java ay nagbibigay sa amin ng 2 paraan upang makakuha ng mga variable ng kapaligiran sa Java program.
  1. System.getenv()

  2. System.getProperty()

Ngayon tingnan natin ang dalawa nang detalyado nang isa-isa.

System.getenv()

Ang System.getenv() na paraan ay ginagamit upang kunin ang lahat ng mga variable ng kapaligiran ngunit kung ang isang partikular na pangalan ng key ay ibinigay bilang isang parameter pagkatapos ay kukunin nito ang halaga nito. Palaging ibinabalik ng java.lang.System.getenv() ang string map ng lahat ng available na environment variable.

Deklarasyon


public static String getenv(String name)
Dito, ang pangalan ay ang parameter na ginamit upang tukuyin ang susi kung saan kailangan namin ang halaga.

Bumalik

Ibabalik nito ang halaga ng key o null kung ang ibinigay na parameter ay hindi nauugnay sa anumang key. Kung hindi naipasa ang parameter, ibabalik nito ang lahat ng available na key/value pairs.

Halimbawa


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));
        }
   }
}

Output

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_PORT10.501. :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_PORTIZ_COMPIL_WEB_80_TCP_PORTIZ_COMPILER_80_TCP_PORTIZ_COMPIL_WEB_COMPIL_80_TCP_PORTIZ_COMPIL_WEB_COMPIL_80_TCP_PORTIZ_COMPIL_WEB_80_TCP_PORTIZ_COMPIL_WEB_80_TCP_PORTIZ_COMPIL_WEB_80_TCP_PORTIZ_COMPIL_WEB_80_TCP_PORTIZ_COMPIL_80_TCP_PORTIZ_COMPILER_80_TCP_PORTIZ_COMPIL_WEB_UI_SEVICE_COMPIL_80_TCP_PORTIZ_WEVTC_P. ADDR=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.://tcp.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.COMPVICE_SERVICE_0.COM _HOST=10.0.. 3:80 PROGRAMIZ_COMPILER_WEB_UI_SEVICE_SERVICE_PORT=80 HOSTNAME=programiz-compiler-deployment-58bfd77477-dtlq8 KUBERNETES_PORT_443_TCP_PORT=443 KUBERNETES_SERVICE_PORT_compiler=44/home
Maaari kang makakuha ng ibang output depende sa iyong operating system.

System.getProperty()

Magagamit din namin ang java.lang.System.getProperty() sa Java para makuha ang value para sa tinukoy na key na ipinasa bilang parameter sa pamamaraang ito. Ginagamit ang paraang ito upang kunin ang mga katangian ng system, ibig sabihin, impormasyon tungkol sa lokal na sistema at mga pagsasaayos. Kung ang environment variable ay naroroon bilang isang system property sa java, mas mabuting gamitin ang System.getProperty() para makakuha ng halaga sa isang platform-independent na paraan. Ang halaga para sa mga katangian ay maaaring baguhin sa runtime ngunit hindi ang kaso sa mga variable ng kapaligiran.

Deklarasyon


public String getProperty(String name)
Dito, ang pangalan ay ang parameter na ginamit upang tukuyin ang susi kung saan kailangan namin ang halaga.

Bumalik

Ibabalik nito ang halaga ng susi o null.

Halimbawa


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")); 
    }
}

Output

user.name: compiler home: null os.name: Linux

Konklusyon

Umaasa kami na sa ngayon ay naiintindihan mo na kung ano ang at kung paano makakuha ng mga variable ng kapaligiran sa java, ang kanilang layunin, at kung paano gumamit ng mga pamamaraan upang makuha ang mga ito. Huwag mag-atubiling magsanay at bumalik sa tuwing kailangan mo ng karagdagang tulong. Maligayang pag-aaral!
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION