春天百里香形式和大写

时间:2016-09-16 12:47:23

标签: spring spring-mvc spring-boot thymeleaf html-form

我有一个简单的表单(registration.html)用于输入用户数据(姓/名,电子邮件):

<p th:text="'First name: ' + ${userdto.firstName}" />
<p th:text="'Last name: ' + ${userdto.lastName}" />
<p th:text="'Email: ' + ${userdto.email}" />

在提交时,我想获取输入的数据并将其显示在另一个模板(result.html)中:

@Controller
public class UserDtoController {

    @GetMapping("/user/registration")
    public String showRegistrationForm(Model model) {
        model.addAttribute("user", new Userdto());
        return "registration";
    }

    @PostMapping("/user/registration")   
    public String registerUserAccount(@ModelAttribute Userdto userdto) {
       return "result";
    }
}

我的控制器如下:

public class Userdto {

    private String firstName;

    private String lastName;

    private String email;

    // plus standard getters and setters ...
}

相应的用户模型是:

class Userdto

这样可以正常工作,但实际上我想将class UserDto重命名为userdto(带大写字母“D”)。如果我重命名它,我在提交表单时收到错误:

  

SpelEvaluationException:EL1007E:在null上找不到属性或字段“firstName”

据我所知,这意味着在输出(result.html)中,{{1}}为空。

为什么会这样,我该如何解决呢?

0 个答案:

没有答案