[SPRING] @RequestMapping에 사용자 정의 속성 값을 적용하는 방법
SPRING@RequestMapping에 사용자 정의 속성 값을 적용하는 방법
나는 언젠가 "/ XXX"에서 "/ V100"로 바뀔 수있는 여러 가지 @RequestMapping을 가지고 있습니다. 그래서 속성에서 정의해야합니다. 내가 봤 거든 거기에 application.properties 사용하는 방법이 있지만 "/ XXX"값을 "local.properties"같은 사용자 정의 된 속성을 유지해야합니다. 사용자 정의 속성에서 @RequestMapping 값을 정의 할 수 있습니까?
@Controller
@RequestMapping("/XXX")
public class MyController {
...
}
** 업데이트 : 몇 시간을 시도하고 작동하도록하십시오.
my.properties
api.version=V100
mvc-context.xml
<context:property-placeholder ignore-unresolvable="true" location="/WEB-INF/config/property/my.properties"/>
제어 장치
@RequestMapping("/${api.version}")
바람둥이 통나무
localhost-startStop-1> [2016-04-28 15:01:35.410] [INFO] [RequestMappingHandlerMapping] [534] Mapped "{[/V100/detail],methods=[GET]}"...
해결법
-
==============================
1.@JustinB가 제공 한 xml 솔루션 외에도 다음과 같은 주석 전용 솔루션 (Spring Boot로 테스트)이 있습니다.
@JustinB가 제공 한 xml 솔루션 외에도 다음과 같은 주석 전용 솔루션 (Spring Boot로 테스트)이 있습니다.
@Controller @PropertySource(value = "classpath:/user.properties", ignoreResourceNotFound = true) @RequestMapping("/${api.version:}") public class MyController { ... }
api.version의 값은 If src / main / resources / user.properties (있는 경우)에서 읽습니다. 파일이 없거나 api.version이 설정되어 있지 않으면 빈 문자열이 기본값으로 사용됩니다.
api.version이 application.properties에도 정의되어 있으면 user.properties가 있고 api.version이 설정되어 있는지 여부에 관계없이 우선 순위가 적용됩니다.
@PropertySource의 더 많은 예제가 여기에 제공됩니다.
from https://stackoverflow.com/questions/36885641/how-to-apply-user-defined-properties-value-to-requestmapping by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 스프링 부트 2 보안 기본 인증 (0) | 2019.05.26 |
---|---|
[SPRING] 스프링 데이터 저장소에 맞춤 주석 조언 적용 (0) | 2019.05.26 |
[SPRING] 자바 함수를 사용하여 스프링 부팅에서 스프링 액추에이터 / 재시작 엔드 포인트 호출 (0) | 2019.05.26 |
[SPRING] App Engine에서 스프링 애플리케이션을 35MB보다 더 많이 배포하는 방법 (0) | 2019.05.26 |
[SPRING] 스프링 부트와 함께 실행 가능한 jar 명령을 사용할 때 Resource FileNotFoundException (0) | 2019.05.26 |