Добрый день! Изучаю vaadin 8, необходимо по работе.
накидал форму, создал класс Person:
package org.example;
import java.util.Date;
public class Person {
private String surname;
private String name;
private String middleName;
private Date birthday;
private String snils;
public void setSurname(String surname){
this.surname = surname;
}
public String getSurname(){
return surname;
}
public void setName(String name) { this.name = name; }
public String getName() { return name; }
public void setMiddleName(String middleName) { this.middleName = middleName; }
public String getMiddleName() { return middleName; }
public void setBirthday(Date birthday) { this.birthday = birthday; }
public Date getBirthday() { return birthday; }
public void setSnils(String snils) { this.snils = snils; }
public String getSnils() { return snils; }
}
Далее создал поле textField и пытаюсь сделать валидацию:
final TextField surname = new TextField("Фамилия");
surname.setWidth("50%");
surname.setMaxLength(100);
new Binder<Person>().forField(surname)
.asRequired("Поле обязательно для заполнения")
.withValidator(str -> str.length() >= 4, "Фамилия не должна быть короче 4 символов")
.bind(Person::getSurname, Person::setSurname);
И тут у меня появились некоторые вопросы. Во первых для чего нужно передавать класс Person? Не совсем понятна строка:
.bind(Person::getSurname, Person::setSurname);
То есть если валидация проходит, то данные записываются в соответствующее поле класса?
Извиняюсь за возможно глупые вопросы)