반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

개키우는개발자 : )

프로퍼티 클래스의 분리 본문

토비의 스프링 부트 - 이해와 원리/섹션9 - 외부 설정을 이용한 자동 구성

프로퍼티 클래스의 분리

DOGvelopers 2024. 10. 13. 15:28
반응형

요약 및 핵심 개념

프로퍼티 값을 클래스로 분리하고, 이를 빈으로 등록하여 여러 곳에서 재사용할 수 있는 방식을 설명했습니다. 또한, 스프링 부트에서 프로퍼티를 관리하는 Binder 유틸리티를 활용하여 프로퍼티 파일의 값을 자동으로 바인딩하는 방법도 다루었습니다.

핵심 내용

  1. 프로퍼티 클래스로 분리:

    • 프로퍼티 값들을 별도의 클래스로 분리하여 관리하면, 중복된 코드를 줄이고 재사용할 수 있습니다.
    • 예를 들어, ServerProperties 클래스를 만들어 서버 설정에 필요한 프로퍼티들을 이 클래스로 관리하고, 이 빈을 생성하여 여러 곳에서 재사용할 수 있습니다.
  2. 프로퍼티 기본값 설정:

    • @Value 애노테이션에서 기본값을 설정하려면, 플레이스홀더 뒤에 콜론(:)을 붙이고 기본값을 지정할 수 있습니다.
    • 이 방식으로 프로퍼티가 존재하지 않을 때 기본값을 사용할 수 있습니다.
  3. 프로퍼티 바인딩을 위한 Binder 사용:

    • Binder 유틸리티를 활용하면 Environment에서 프로퍼티 값을 자동으로 클래스로 바인딩할 수 있습니다.
    • Binder.get(Environment).bind("property.name", 클래스명)을 통해 프로퍼티와 클래스의 필드가 자동으로 매칭되어 값을 바인딩합니다.
    • 이를 통해 일일이 프로퍼티를 추출할 필요 없이 보다 간결한 코드로 프로퍼티 값을 사용할 수 있습니다.
  4. 프로퍼티 파일과 클래스 필드 매칭:

    • 프로퍼티 파일에서 점(.)으로 구분된 값들은 클래스 내의 중첩된 필드로 바인딩됩니다. 예를 들어, server.servlet.jsp서블릿 관련 설정을 JSP와 연결할 수 있는 구조입니다.
  5. Prefix 사용:

    • Prefix를 사용하여 비슷한 이름의 프로퍼티들을 구분할 수 있습니다. 예를 들어, 서버 관련 프로퍼티는 server.로 시작하도록 하여, 여러 서비스의 포트 번호 등을 명확히 구분할 수 있습니다.

결론

프로퍼티 관리의 효율성을 높이기 위해 클래스로 분리하고, 이를 빈으로 등록하여 재사용하는 방법을 배웠습니다. 또한, 스프링 부트의 Binder 유틸리티를 활용해 프로퍼티 파일과 클래스 필드를 자동으로 매칭하는 방법도 다루었습니다. 프로퍼티 관리의 구조화와 코드 간소화에 큰 도움이 되는 내용이었습니다.

반응형
Comments