【发布时间】:2018-05-11 19:01:16
【问题描述】:
我正在尝试学习 spring mvc。我无法理解 @ModelAttribute 的工作原理。下面是我的控制器
@RequestMapping("/showForm")
public String showForm(Model theModel){
Student student = new Student();
theModel.addAttribute("testName",student);
return "student-form";
}
@RequestMapping("/processForm")
public String showForm(@ModelAttribute("hello") Student student){
return "student-confirmation";
}
当我进入学生表单页面时,我创建了一个 student 对象并将其添加到属性名称为 "testName" 的模型中。然后我将表单提交给“processForm”方法。使用下面的表格
<form:form action="processForm" modelAttribute="testName">
First Name: <form:input path="firstName" />
Second Name: <form:input path="lastName" />
<input type="submit" value="submit" />
</form:form>
这是我不明白的属性名称在我将对象放置到模型的位置以及我检索它的位置不匹配。但是结果显示正确..
theModel.addAttribute("testName",student); //Here it is testName
@ModelAttribute("hello") Student student //Here it is hello
学生确认.jsp
First Name : ${hello.firstName}
Last Name : ${hello.lastName}
【问题讨论】:
标签: spring spring-mvc model modelattribute