Я пытаюсь изучить 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
студент-confirmation.jsp
First Name : ${hello.firstName}
Last Name : ${hello.lastName}