>Java >java지도 시간 >Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

王林
王林앞으로
2023-05-15 09:55:121298검색

콘텐츠:

다음은 주석을 기반으로 하는 두 가지 방법입니다.

@Value("${xxxxx.xx}")@Value("${xxxxx.xx}")

@ConfigurationProperties(prefix = "xxxxx")

@ConfigurationProperties( prefix = "xxxxx")

주제 입력:

@Value("${xxxxx.xx}")

이 방법을 사용하는 것은 매우 간단합니다(각 주석은 해당 구성 값을 가져옵니다).

yml에 사용자 정의 구성 항목을 추가합니다(예: 대문자 및 소문자, 호출 시 일치):

Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

다음과 같이 사용할 값을 가져오도록 지정합니다.

@Value("${myKey.tua}")
    private  String tuaKey;
    @Value("${myKey.aco}")
    private  String acoKey;
    @Value("${mynum.new}")
    private  String myNum;
 
    @GetMapping("/getMyTest")
    public void getMyTest(){
 
        System.out.println("tuaKey:"+tuaKey);
        System.out.println("acoKey:"+acoKey);
        System.out.println("myNum:"+myNum);
    }

결과를 보고 얻을 수 있습니다. 일반적으로:

Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

@ConfigurationProperties(prefix = "xxxxx")

이 방법을 사용하는 것도 매우 간단합니다(한 번에 여러 구성 값을 얻고 이를 Bean으로 인스턴스화하여 스프링 컨테이너에 넣습니다). ),

yml에 추가하세요. 다음과 같은 사용자 정의 구성 항목을 추가하세요(시작 부분의 주요 매개 변수는 소문자이며 접두어는 카멜 케이스 이름 지정 및 밑줄 형식을 지원하지 않기 때문에 대문자를 사용하는 것은 잘못됩니다).

Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

그런 다음 이러한 구성 항목 엔터티 클래스에 대한 구성 항목을 작성하고 다음과 같은 @ConfigurationProperties 주석을 사용합니다.

prefix는 일반적으로 첫 번째 예인 접두사를 나타냅니다. myinfo

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
 
/**
 * @Author : JCccc
 * @CreateTime : 2020/5/19
 * @Description :
 **/ 
 
@Component
@ConfigurationProperties(prefix = "myinfo")
public class MyInfo {
 
    private String name;
    private Integer age;
    private String description;
 
    @Override
    public String toString() {
        return "MyTest{" +
                "name="" + name + """ +
                ", age=" + age +
                ", description="" + description + """ +
                "}";
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public Integer getAge() {
        return age;
    }
 
    public void setAge(Integer age) {
        this.age = age;
    }
 
    public String getDescription() {
        return description;
    }
 
    public void setDescription(String description) {
        this.description = description;
    }
}

이 클래스를 사용하는 것과 동일한 사용을 위해 이러한 값을 얻도록 지정합니다. @Autowired와 함께 직접 사용할 수 있습니다.

@Autowired
    MyInfo myInfo;
 
    @GetMapping("/getMyTest")
    public void getMyTest(){
 
        System.out.println("myInfo:"+myInfo.toString());
        System.out.println("myInfo name:"+myInfo.getName());
    }

결과를 보고 정상적으로 얻을 수 있습니다.

Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?

🎜

위 내용은 Springboot는 yml 파일에서 구성 값을 얻기 위해 어떻게 지정합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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