Supposons que j'ai une page qui répertorie les objets sur une table et que j'ai besoin de mettre un formulaire pour filtrer la table. Le filtre est envoyé en tant que GET Ajax à une URL comme celle-ci: http://foo.com/system/controller/action?page=1&prop1=x&prop2=y&prop3=z
Et au lieu d'avoir beaucoup de paramètres sur mon contrôleur comme:
@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
@RequestParam(value = "page", required = false) int page,
@RequestParam(value = "prop1", required = false) String prop1,
@RequestParam(value = "prop2", required = false) String prop2,
@RequestParam(value = "prop3", required = false) String prop3) { ... }
Et en supposant que j'ai MyObject comme:
public class MyObject {
private String prop1;
private String prop2;
private String prop3;
//Getters and setters
...
}
Je veux faire quelque chose comme:
@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
@RequestParam(value = "page", required = false) int page,
@RequestParam(value = "myObject", required = false) MyObject myObject,) { ... }
C'est possible? Comment puis je faire ça?
@ModelAttribute
, Exemple de gestion de formulaire Spring MVC . Il suffit de google " Gestion des formulaires Spring MVC " et vous obtiendrez une tonne de tutoriels / exemples. Mais assurez-vous d'utiliser un moyen moderne de gestion des formulaires, c'est-à-dire Spring v2.5 +
@ModelAttribute
dans Spring MVC