>Java >java지도 시간 >Spring Boot에서 구성 속성은 어떻게 바인딩됩니까?

Spring Boot에서 구성 속성은 어떻게 바인딩됩니까?

WBOY
WBOY원래의
2024-04-18 09:09:02627검색

Spring Boot의 구성 속성은 애플리케이션 속성 파일, 환경 변수 및 명령줄 매개변수를 포함하여 속성 소스의 구성 속성 클래스에 바인딩될 수 있습니다. 속성 바인딩은 @ConfigurationProperties 주석을 통해 수행됩니다. 실제 사례: 구성 특성 클래스를 만들고, 특성 소스를 바인딩하고, 구성 특성을 가져옵니다.

Spring Boot 中的配置属性是如何绑定的?

Spring Boot에서 구성 속성 바인딩

Spring Boot는 애플리케이션 속성 파일, 환경 변수, 명령줄 매개변수 등 다양한 소스의 구성 속성을 쉽게 바인딩할 수 있는 강력한 구성 속성 메커니즘을 제공합니다. 구성 값을 애플리케이션에 바인딩합니다.

구성 속성 클래스 생성

먼저 구성 속성의 필드와 유형을 선언하기 위한 구성 속성 클래스를 생성해야 합니다. 예를 들어 다음 클래스는 두 가지 구성 속성을 정의합니다.

@ConfigurationProperties("my.app")
public class AppConfig {
    private String name;
    private int port;

    // getter and setter methods
}

Property Sources

Spring Boot에서 구성 속성은 다양한 속성 소스에서 바인딩될 수 있습니다. 가장 일반적인 속성 소스는 다음과 같습니다.

  • 애플리케이션 속성 파일: src/main/resources/application.properties에 위치하며 키-값 쌍을 포함합니다.
  • src/main/resources/application.properties 中,包含键值对。
  • 环境变量:系统环境变量,以 MY_APP_NAME 等格式命名。
  • 命令行参数:--my.app.name=value 等格式传递给应用程序。

属性绑定

Spring Boot 会自动将配置属性从属性源绑定到配置属性类。此绑定通过 @ConfigurationProperties 注解完成。

实战案例

以下是一个实战案例,展示了如何在 Spring Boot 应用程序中使用配置属性:

@SpringBootApplication
public class MyApp {
    public static void main(String[] args) {
        SpringApplication.run(MyApp.class, args);
        AppConfig config = beanFactory.getBean(AppConfig.class);

        System.out.println("Name: " + config.getName());
        System.out.println("Port: " + config.getPort());
    }
}

在这个示例中,我们创建了一个 AppConfig 类,并使用 @ConfigurationProperties 注解将其声明为配置属性类。然后,我们使用 beanFactory 获取 AppConfig bean,并打印配置的属性值。

运行此应用程序并提供 application.properties

환경 변수:

MY_APP_NAME 형식으로 명명된 시스템 환경 변수입니다.

🎜명령줄 매개변수: 🎜는 --my.app.name=value 형식으로 애플리케이션에 전달됩니다. 🎜🎜Property Binding🎜🎜🎜Spring Boot는 자동으로 속성 소스의 구성 속성을 구성 속성 클래스에 바인딩합니다. 이 바인딩은 @ConfigurationProperties 주석을 통해 수행됩니다. 🎜🎜🎜실용 사례🎜🎜🎜다음은 Spring Boot 애플리케이션에서 구성 속성을 사용하는 방법을 보여주는 실제 사례입니다. 🎜
my.app.name=My Application
my.app.port=8080
🎜이 예에서는 AppConfig 클래스를 만들고 다음과 같이 선언합니다. @ConfigurationProperties 주석을 사용하는 구성 속성 클래스. 그런 다음 beanFactory를 사용하여 AppConfig Bean을 가져오고 구성된 속성 값을 인쇄합니다. 🎜🎜이 애플리케이션을 실행하고 application.properties 파일을 제공하세요. 🎜
Name: My Application
Port: 8080
🎜콘솔에 출력이 표시되어야 합니다. 🎜rrreee

위 내용은 Spring Boot에서 구성 속성은 어떻게 바인딩됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.