У меня есть весна @RequestMapping
с парой @PathVariable
s, и первая из них необходима, чтобы сузить ее до второго - вы можете увидеть в приведенном ниже примере, что мне нужно получить Департамент, чтобы получить модуль , Используя простые String
@PathVariable
сек я могу сделать это так:Может ли преобразованный @PathVariables ссылаться друг на друга?
@RequestMapping("/admin/{dept}/{mod}/")
public String showModule(@PathVariable String dept, @PathVariable String mod) {
Department department = dao.findDepartment(dept);
Module module = department.findModule(mod);
return "view";
}
Но я заинтересован в использовании Converter
API Spring, чтобы иметь возможность указать Department
непосредственно как @PathVariable
. Так это работает после того, как я зарегистрировал собственный Converter
класс:
@RequestMapping("/admin/{dept}/")
public String showDept(@PathVariable Department dept) {
return "view";
}
Но конвертер API не дает доступа за пределами единственного аргумента конвертируемые, так что это не возможно реализовать Converter
для Module
. Есть ли другой API, который я могу использовать? Я смотрю вверх HandlerMethodArgumentResolver
- кто-нибудь решил проблему вроде этого, или вы придерживаетесь String @PathVariables?
Я использую Spring 3.1.
, так что вам нужно знать отдел, чтобы загрузить модуль? –
Это правильно. – Nick