2016-11-15 1 views
0

잠시 동안 무시해도 좋은가요?하지만 내부 라이브러리에 대한 스프링 부트 자동 구성을 만들고 있는데이 중 일부로 자동 등록을 원합니다. GET/POST/DELETE 요청을 받아들이는 컨트롤러 (응용 프로그램 테스트 목적으로 쿠키 값을 설정/삭제할 책임이 있습니다)@RequestMapping과 같이 @ConfigurationProperties를 정적으로 사용하기

문제는 최종 사용자가 요청 매핑 경로를 구성 할 수있게하려는 것입니다. private String path = "default-path"

가 이상적으로 난과 같이 내 컨트롤러에서이 참조 할 수있을 것입니다 : 내가 예를 들어 기본값으로 모든 구성 값을 포함하는 @ConfigurationProperties(prefix = "my.configs") 클래스가 @RequestMapping(path=${my.configs.path})하지만이 작동하지 않습니다, 봄은없는 것으로보고 해당 구성 매개 변수를 찾으려면 형식 파일 대신 형식 파일 @ConfigurationProperties에 넣으면 예상대로 작동합니다.

요청 매핑에 기본값을 넣으면이 문제를 해결할 수 있지만 여기서는 무슨 일이 일어나고 있는지, 왜 정적으로 환경 변수를 참조 할 수 없는지 이해하고 싶습니다./기본값으로 @ConfigurationProperties을 기본값으로 사용합니다. 나는 파일에 정의 된 것을 할 수있다.

답변

0

@RequestMapping은 Spring MVC annotation이며, Spring MVC에 의해 처리된다. (Spring Boot app에 모두 포장되었는지 여부에 관계없이).

@ConfiguationProperties은 100 % 스프링 부트 코드이며 내 지식으로 볼 때 스프링 컨텍스트 시작 라이프 사이클 중 두 가지 유형의 등록 정보가 서로 다른 순간에 처리됩니다.

관련 문제