我们可以对同一控制器中的每个对象使用BindingResult吗?

时间:2018-09-27 04:46:05

标签: spring spring-mvc spring-boot spring-data-jpa spring-data

我正在将数据从单个html表单传递到两个对象,并且在控制器中我必须使用两个对象。因此,我想知道是否可以在同一控制器中为每个对象使用BindingResult,以便在发生错误时显示错误。

1 个答案:

答案 0 :(得分:1)

如果您从控制器中的一种形式接收到两个对象,则必须有两个BindingResult,因为一个BindingResult包含对象紧接其前的验证结果在控制器方法的签名中。

因此您的控制器应如下所示:

@PostMapping("...")
public String handlePost(@Valid Object1 object1, BindingResult result1, @Valid Object2 object2, BindingResult result2) {

也许您应该看看this post