В вашем HTML вы должны использовать правильный синтаксис для вашего атрибута модели.Spring жалуется, что не может найти свойство id
, поскольку вы предоставляете строку employee
, а не объект.
modelAttribute="employee" --> th:object="${employee}"
Кроме того, вы можете объединить в:
@Controller //please add this
public class URLController {
@GetMapping({"/", "/index"})
public String index1(Model model){
model.addAttribute("employee",new Employee());
return "index";
}
@PostMapping("/result")
public String result(@ModelAttribute Employee employee){
System.out.print(employee.getName()); //use a logger instead
return "result"; //may want to return a different page name for clarity
}
}
Ваша IDE не будет жаловаться, если вы измените свой HTML-тег на:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org">
Наконец, вы можете захотеть использовать тип ввода tel
для телефонного поля.Это позволит отображать пользовательскую клавиатуру для мобильных пользователей.