繁体   English   中英

Spring MVC表单使用modelAttribute提交

[英]Spring MVC form submit using modelAttribute

我有类似的东西

@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作为模型属性,还可以接收其他类。 我是否需要创建一个新的POJO,其中包含两个类的数据,或者还有其他方法。

编辑

我读了有关DTO的文章。 但这不是POJO的重复。 我们不能混合使用2-3个POJO。

您可以创建一个“ form” 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" />

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM