我有类似
的东西@RequestMapping("/showRegister")
public String showUserRegistrationForm(ModelMap modelMap) {
modelMap.addAttribute("user", new UserBean());
return "Register";
}
@RequestMapping("/RegisterUser")
public String registerUser(@ModelAttribute("user") UserBean userBean,
BindingResult result, ModelMap modelMap) {
System.out.println(userBean.getPassword());
return "Register";
}
在我的代码中。
以上工作完美。现在假设我想将模态数据从表单保存到多个表中,每个表都有自己的POJO类。那么代码如何才能不仅接收UserBean作为modelattribute而且接收其他类。我是否必须创建一个包含来自两个类的数据的新POJO,或者还有其他方法。
修改
我读到了DTO。但它不是重复POJO的。我们不能使用2-3 POJO的混合。
答案 0 :(得分:1)
你可以创建一个“表单”bean,并将你的UserBean和任何其他pojos作为成员添加到它。我实际上更喜欢这样做,因为它使复杂的验证更容易,更自包含。
public class MyFormBean {
private UserBean userBean;
private MyOtherBean otherBean;
// Add getters and setters as needed
}
然后,您的表单需要引用正确的路径以深入查看对象。 如果你有类似的东西:
<form:input path="name" />
您可以将其更改为
<form:input path="userBean.name" />