gpt4 book ai didi

java - 如何从 Controller 传递多个模型对象以及如何将所有作为命令对象传递到表单 :form in spring mvc?

转载 作者:行者123 更新时间:2023-12-01 18:44:48 26 4
gpt4 key购买 nike

这种情况就像我想从 Controller 传递多个模型对象,我可以这样实现,

 model .addAttribute(“person”, new Person());
model.addAttribute(“address”, new Address());

但是如何在 Spring View 中传递它们两个或多个

<form:form action=”registration” command=”person”>

因为它只允许我传递一个命令。那么如何将所有的 require 命令传递给他们。

最佳答案

只需将 personaddress 添加到名为 personDetails 的封装对象中,并将其传递给表单。

class PersonDetails {
private Person person;
private Address address;

...
}


PersonDetails personDetails = new PersonDetails();
personDetails.setPerson(new Person());
personDetails.setAddress(new Address());

model.addAttribute(“personDetails”, personDetails);


<form:form action=”registration” command=”personDetails”>

完成此操作后,您必须适当修改路径

<form:input path="firstName" />

变成

<form:input path="person.firstName" />

其他更优雅的选项是将 Address 包含在 Person 中,并将 Person 公开为命令。正如@Seabook 在下面的回答中提到的。

关于java - 如何从 Controller 传递多个模型对象以及如何将所有作为命令对象传递到表单 :form in spring mvc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18247896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com