С Spring 3.0, могу ли я иметь необязательную переменную пути?
Например
@RequestMapping(value = "/json/{type}", method = RequestMethod.GET)
public @ResponseBody TestBean testAjax(
HttpServletRequest req,
@PathVariable String type,
@RequestParam("track") String track) {
return new TestBean();
}
Здесь мне бы хотелось, чтобы /json/abc
или /json
вызывал тот же метод.
Одно очевидное обходное решение объявляет type
как параметр запроса:
@RequestMapping(value = "/json", method = RequestMethod.GET)
public @ResponseBody TestBean testAjax(
HttpServletRequest req,
@RequestParam(value = "type", required = false) String type,
@RequestParam("track") String track) {
return new TestBean();
}
а затем /json?type=abc&track=aa
или /json?track=rr
будет работать