@GetMapping(value = "/{locale}", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> getLocale(@PathVariable(name="locale", required=
false) String locale) {
//set english as default value if local is null
locale = locale == null? "english": locale;
return new ResponseEntity<>(locale, HttpStatus.OK);
}
5条答案
按热度按时间jdzmm42g1#
默认情况下,PathVariable是必需的,但您可以将其设置为可选:
t2a7ltrp2#
您可以使用必需的false属性,然后检查是否为null或空字符串值。请参阅this thread
然后检查是否为null或空字符串。
dffbzjpn3#
到目前为止,您无法为Spring路径变量提供缺省值。
您可以执行以下显而易见的操作:
但更合适的方法是使用Spring i18n.CookieLocaleResolver,这样您就不再需要该路径变量了:
4c8rllxm4#
我们可以将@PathVariable的required属性设置为false以使其可选。
但是我们还需要监听没有路径变量的请求。
yb3bgrhw5#
您只需提供默认值