2

这可能是一个简单的问题,但我是新手。

我在 Spring MVC 3.0 中工作,我有用 jsp 形式映射的模型对象。

一旦用户提交表单,我想将模型对象传递回控制器。

我的 JSP 页面中只有标签,并且我设置了类似这样的内容

<td>First name : </td> 
<td>
    <form:label path="RegisterInterest.firstName">${RegisterInterest.firstName}</form:label> 
</td>

RegisterInterest是我的模型对象。

我想firstName在用户提交页面后恢复值。是否可以在标签中设置路径并将值发送回控制器?

我有一个解决方案,通过将模型保持在会话中,这对我来说是最简单的解决方案,但我不想在这种情况下使用会话!我也可以使用隐藏标签,但我的 JSP 中有很多字段!

谢谢。

4

2 回答 2

0

表格的目的是输入一些东西。这就是表单中有输入的原因。如果你想隐藏一些信息,你可以使用 . 但是,当您提交表格时,所有保留在输入之外的信息都不会被考虑在内。

你的问题背后的想法是什么?

于 2013-05-08T20:28:49.180 回答
0

我给你举个例子:

public class FormInput{
@NotNull(message="Name can't be null")
private name;
@NotNull(message("Age can't be null")
private age;
    etc etc

如果您创建一个与此类似的类,它将保存来自您的表单的所有数据,并将该类作为 @ModelAttribute 传递,如下所示:

@ModelAttribute(FormInput);
model.addAttribute(FormInput);
return new ModelAndView(model, form.jsp);

至于您的 .jsp 文件,请查看此站点以了解如何使用以及在您的 spring .jsp http://static.springsource.org/spring/docs/3.0.x/reference/view.html

不要忘记 <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> 在 .jsp 的开头添加

您可以@Valid在调用 POST 时使用自动验证所有字段,如果您调用bindingResult.hasErrors()它,它将在表单上的字段中打印出错误消息,而无需编写任何代码。

确保您为标签提供的名称与您为类字段提供的名称相匹配。

于 2013-05-09T03:50:23.070 回答