【发布时间】:2019-03-19 07:53:58
【问题描述】:
我想将 REST 端点动态映射到 RestController。 我想将端点配置为属性。
我的 RestController 看起来像这样
@RestController
public class MyRestController {
}
@PutMapping("#{'${mapping}'.split(',')}")
public String fooMapping(@RequestHeader MultiValueMap<String, String> headers, HttpServletRequest request) throws URISyntaxException {
return "foo";
}
}
application.properties 看起来像这样
mapping=/mapping1,/mapping2,/mapping3
如何将逗号分隔的列表注入注解?以下硬编码方法确实有效。
@PutMapping(value = {"/mapping1", "/mapping2", "/mapping3"})
【问题讨论】:
-
@PutMapping 值仅采用常量值。所以你不能从属性文件中加载它的值。