Я пытался издеваться над соглашением Grails по парадигме конфигурации в приложении spring mvc, и мне сложно автоматизировать сопоставления обработчиков.
В общем у меня такой контроллер.
@Controller
@RequestMapping(value = {"/", "/contact"})
public class ContactController {
@Autowired
private ContactService contactService;
@RequestMapping(value = {"/","/index"})
public String listContacts(Map<String, Object> map){
map.put("contact", new Contact());
map.put("contactList", contactService.listContact());
return "contact";
}
@RequestMapping(value = "/add", method = RequestMethod.POST)
public String addContact(@ModelAttribute("contact")Contact contact, BindingResult result){
contactService.addContact(contact);
return "redirect:/contact/index";
}
@RequestMapping(value = "/delete/{contactId}", method = RequestMethod.GET)
public String removeContact(@PathVariable("contactId")Long contactId){
contactService.removeContact(contactId);
return "redirect:/contact/index";
}
}
Теперь я попробовал «ControllerClassNameHandlerMapping», но, похоже, у него есть ограничение с URL-адресом из трех частей.
В основном я хочу, чтобы все запросы автоматически сопоставлялись с соответствующим контроллером и действиями без использования @RequestMapping.
Любые указатели будут большим подспорьем