본문 바로가기

Language/JAVA

Java Static이란? 사용 방법 내가 사용한 곳

728x90

개요

Static은 스테틱 변수 메소드 앞에 붙일 수 있다. static을 쓰면 jvm이 실행될 때 한번 불러옵니다.
내가 이걸 왜 쓰냐면 aws 람다를 쓰는데 여기에서 파일을 불러와서 무언가 설정을 하고싶기 때문에 사용을 했습니다.
이 설정은 자주 바뀌는 것은 아니지만 호출은 자주 됩니다.
java의 constants 변수 처럼 쓰고 싶지만 파일을 변경해서 설정을 적용하고 싶기 때문입니다.
나중에 이 부분을 redis 등 cache와 연동하고 싶기 때문에 중간 단계를 만드는 작업입니다.

프로젝트 구조는 위와 같이 src/main/java, src/main/resources 이렇게 되어있고

resources에 hello.properties가 들어있습니다.

hello.properties

name = kyeongrok
setting = {"hello":"world"}

hello.properties를 static method를 이용해 불러오고 싶을때 아래와 같이 씁니다.

import java.io.IOException;
import java.util.ResourceBundle;

public class StaticExample {

    public static void getProperties() throws IOException {
        String name = ResourceBundle.getBundle("hello").getString("name");
        System.out.println(name);
    }

    public static void main(String[] args) throws IOException {
        getProperties();
    }
}

결과
kyeongrok

 

static{ } 블록 사용하는 방법

private static ImmutableSet<String> ALLOWED_USER_IDS;
static {
   ALLOWED_USER_IDS = ImmutableSet.of("id");
}

static 변수에 접근 하려면 이렇게 해야 합니다.

728x90
블로그 주인장입니다. 원하시는 정보는 얻으셨나요? 이 포스트에서 추가로 필요한 정보가 있으시면 여기에 남겨주세요.