Combine os métodos de solicitação GET e POST no Spring
Eu tenho um recurso que suporta tantoGET
ePOST
solicitações de. Aqui um código de amostra para um recurso de amostra:
@RequestMapping(value = "/books", method = RequestMethod.GET)
public ModelAndView listBooks(@ModelAttribute("booksFilter") BooksFilter filter, two @RequestParam parameters, HttpServletRequest request)
throws ParseException {
LONG CODE
}
@RequestMapping(value = "/books", method = RequestMethod.POST)
public ModelAndView listBooksPOST(@ModelAttribute("booksFilter") BooksFilter filter, BindingResult result)
throws ParseException {
SAME LONG CODE with a minor difference
}
O código nos dois métodos é praticamente o mesmo, exceto por digamos uma definição de variável. Os dois métodos podem ser facilmente combinados usandomethod = {RequestMethod.POST, RequestMethod.GET}
e um simplesif
dentro. Eu tentei, mas não funciona, porque os dois métodos têm um parâmetro diferente no final, ou seja,HttpServletRequest
eBindingResult
(a@RequestParam
não são necessários e, portanto, não são necessários noPOST
pedido). Alguma idéia de como combinar os dois métodos?