Что значит сказать «if (binding.hasErrors ())» в Spring? - PullRequest
2 голосов
/ 29 августа 2010

В этом примере я не понимаю, для чего BindingResult и что значит сказать if (binding.hasErrors()) ниже.

@RequestMapping(value = "/test", method = RequestMethod.POST)
public final String submit(@ModelAttribute(TEST) @Valid final Test test, final BindingResult binding,
    final HttpServletRequest request, final ModelMap modelMap)
{

    if (binding.hasErrors())
    {
        return "test";
    }

1 Ответ

2 голосов
/ 29 августа 2010

BindingResult - это результат привязки данных, связанный с предыдущим аргументом (то есть test). Он содержит информацию об ошибках привязки параметров запроса к свойствам test, таких как несоответствия типов. Когда присутствует примечание @Valid, оно также содержит ошибки, вызванные автоматической проверкой test.

Итак, binding.hasErrors() определяет, были ли обнаружены ошибки во время привязки и проверки test. Когда такие ошибки присутствуют, типичным поведением является повторное отображение формы с сообщениями об ошибках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...