在Spring
3.0中,您应该使用带有注释的简单类
@Controller。这样的控制器可以处理多个请求。每个请求由其自己的方法处理。这些方法由注释
@RequestMapping。
您需要重新考虑的一件事是,一所古老的学校
SimpleFormController处理许多不同的请求(至少:一个要获取表格,第二个要提交表格)。您现在必须手动处理。但是相信我,这会更容易。
例如,此REST风格的Controller将处理两个请求:
- / book-POST:创建一本书
- / book / form-GET:获取用于创建的表单
Java代码:
@RequestMapping("/book/**")@Controllerpublic class BookController { @RequestMapping(value = "/book", method = RequestMethod.POST) public String create( @ModelAttribute("bookCommand") final BookCommand bookCommand) { Book book = createBookFromBookCommand(bookCommand); return "redirect:/book/" + book.getId(); } @RequestMapping(value = "/book/form", method = RequestMethod.GET) public String createForm(final ModelMap modelMap) { modelMap.addAttribute("all", "what you need"); return "book/create"; //book/create.jsp }}


