Spring MVC和表单绑定:如果所有字段都为空,如何告诉Spring不要实例化子对象?

时间:2016-01-11 12:54:35

标签: java spring forms spring-mvc thymeleaf

如果没有任何字段被相应的表单修改,我很难理解如何阻止Spring初始化表单bean的子成员对象。例如,我有一个具有字段地址的用户对象,我将空的User实例传递给表单(当时地址为空)。 在表单中,我有所有用户和地址字段的输入字段:

a

当我在相应的控制器方法中设置断点时,Address对象存在于User对象中,其所有字段都为null,0,false(默认值)。我知道初始化发生在WebDataBinder中。我怎么能指示它不要这样做? 动态列表也是如此,如果我有List,那么List将在表单提交后获得一个新条目。 非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

您需要实例化该对象,或者您无法将表单中输入的值存储在任何位置。

如果您不想将空对象保存到数据库,那么您可能需要在保存之前进行修改检查。