Во многих случаях должно быть достаточно, если имена параметров POST совпадают с именами атрибутов POJO. Однако, правильный способ - использовать taglib формы Spring и связать его с вашим pojo:
@Controller
@RequestMapping("/user")
class UserController {
...
@RequestMapping(value="/login", method=RequestMethod.GET)
public ModelAndView get() {
return new ModelAndView().addObject("formBackingObject", new User());
}
@RequestMapping(value="/login", method=RequestMethod.POST)
public String save(User user) {
// Do something with user
return "redirect:/...";
}
}
А потом в вашем JSP:
// e.g in user/login.jsp
<form:form method="post" commandName="formBackingObject" action="/user/login.html">
<form:label path="username"><spring:message code="label.username" /></form:label>
<form:input path="username" cssErrorClass="error" />
<form:label path="password"><spring:message code="label.password" /></form:label>
<form:password path="password" cssErrorClass="error" />
<p><input class="button" type="submit" value="<spring:message code="label.login" />"/></p>
</form:form>
Вы можете вкладывать свои атрибуты (например, address.street, если у вашего пользователя есть свойство address), хотя я не думаю, что Spring примет более одного объекта команды.