최근 봄에 spring-configuration-metadata.json
파일을 생성하고 additional-spring-configuration-metadata.json
파일을 생성하는 것이 가능하다는 것을 알게되었습니다.코드 구성 API를 통해 스프링 구성 속성에 액세스하기
Spring을 통해이 정보에 액세스 할 수 있습니까? 예를 들어이 JSON 파일에서 추출한 도움말 메시지를 출력 할 수 있습니까? 나는 Spring documentation에 언급 된 것을 보지 못했습니다. 내가 말할 수있는 한, 설정 클래스는 실제로 주입 된 객체에서 스프링 메타 데이터가없는 POJO이다.
내가 다음 클래스 말해봐 :package test;
import org.springframework.boot.context.properties.ConfigurationProperties;
@ConfigurationProperties(prefix = "myConfig")
public class MyConfig
{
/**
* myField description.
*/
private int myField = 3;
public int setMyField(int i){ myField = i; }
public int getMyField(){ return myField; }
}
을 그리고 이것은 다음과 같은 메타 데이터를 생성합니다
{
"groups": [{
"name": "myConfig",
"type": "test.MyConfig",
"sourceType": "test.MyConfig"
}],
"properties": [
{
"name": "myConfig",
"type": "java.lang.Integer",
"description": "myField description.",
"sourceType": "test.MyConfig",
"defaultValue": 3
}
],
"hints": []
}
가 이상적으로는 MyConfig.getMyField().getDescription()
를 작성하고 돌려 "myField description"
을 할 수있는 방법이있을 것입니다. 또한 JSON에 메타 데이터를 추가하여 비슷한 방식으로 검색 할 수 있기를 바랍니다.
당신이 달성하려고하는지 설명 할 수 : 프로젝트에이를 추가하는 경우
, 당신은 쉽게 현재의 클래스 경로에 정의 된 키 저장소를 구축 할 수 있습니다? 어떤 정보를 검색하려고하는지, 왜 그 정보가 왜 불투명합니까? – chrylis
그래서 지금 나는''@Description ("이것은이 설정 옵션에 대한 설명입니다.")''과 같은 커스텀 어노테이션을 생성했습니다. 내 구성 클래스에 대한 도움말 메시지 등을 사용합니다. 메타 데이터 JSON에 항목을 추가하고 이러한 주석을 직접 작성하는 대신 Spring API를 사용하여 항목을 검색 할 수 있고 가능한지 궁금합니다. – Lucas
위의 질문에 예제를 추가했습니다. – Lucas