>Java >java지도 시간 >SpringBoot 구문 분석을 위한 Yaml 구성 파일을 지정하는 방법

SpringBoot 구문 분석을 위한 Yaml 구성 파일을 지정하는 방법

WBOY
WBOY앞으로
2023-05-22 10:07:071035검색

1. 사용자 정의 구성 파일

리소스 아래에 my.yaml 파일을 만듭니다. "-"는 배열 유형을 나타내는 데 사용됩니다. 공백에 주의하세요.

my:
  contents:
    - id: 12121
      name: nadasd
    - id: 3333
      name: vfffff

2. 구성 개체 클래스

구성 클래스 개체를 만들고 @Component, @PropertySource 및 @ConfigurationProperties 주석을 클래스에 추가합니다.

@Component는 클래스를 스프링 관리에 넘겨주고, @PropertySource는 구성 파일을 지정하고 Yaml 형식을 구문 분석하는 데 사용되며, @ConfigurationProperties는 구문 분석된 구성 파일 속성을 클래스의 속성에 자동으로 삽입하는 데 사용됩니다.

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

@Component
@PropertySource(value = "classpath:my.yaml", factory = YamlPropertiesSourceFactory.class)
@ConfigurationProperties(prefix = "my")
public class MyProperties {

    private List<content> contents = new ArrayList<>();

    public List<content> getContents() {
        return contents;
    }

    public void setContents(List<content> contents) {
        this.contents = contents;
    }


}

class content {
    private String id;

    private String name;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

@PropertySource 주석은 Spring에서 구성 파일을 로드하는 데 사용됩니다. @PropertySource 속성은 다음과 같습니다.

  • name: 기본적으로 비어 있고 지정되지 않은 경우 Spring에서 자동으로 생성됨

  • value: 구성 파일

  • ignoreResourceNotFound: 찾을 수 없음 구성 파일을 무시할지 여부, 기본값은 false이며 버전 4.0에 추가됨

  • encoding: 구성 파일 인코딩 형식, 기본 UTF-8이 버전 4.3에 추가됨

  • factory: 구성 파일 구문 분석 팩토리, 기본값: PropertySourceFactory.class는 버전 4.3에 추가되었습니다. 이전 버전인 경우 구성 파일 구문 분석 Bean을 수동으로 삽입해야 합니다.

Spring Boot는 기본적으로 yaml 파일을 읽기 위해 @PropertySource를 지원하지 않습니다. 그리고 구문 분석을 위해 PropertySourceFactory를 사용자 정의해야 합니다.

3. YamlPropertiesSourceFactory

Yaml 형식의 파일을 구문 분석하는 YamlPropertiesSourceFactory 클래스를 만듭니다.

아아아아

위 내용은 SpringBoot 구문 분석을 위한 Yaml 구성 파일을 지정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제