Просто начал использовать Hibernate Validator. У меня есть случай, когда идентификатор bean-бина автогенерируется при сохранении. Я бы жил, чтобы проверить фасоль перед сохранением. В это время идентификатор может быть нулевым. Однако, когда я хочу обновить его, идентификатор должен быть notnull.
Таким образом, общий @NotNull в поле не будет работать, потому что, когда я иду, чтобы сохранить его, он не будет проверяться.
Есть способы обойти это, но мне было интересно, есть ли у реализации спецификации или спящего режима стандартный способ сделать это. Я бы не хотел иметь никаких ошибок проверки при сохранении и отсутствии проверки при обновлении.
Например, применение ограничения, но оно игнорируется, если не указано неявно или что-то в этом роде.
Заранее спасибо.
Вы можете добиться этого с помощью групп.
public class MyBean {
@NotNull(groups = UpdateBean.class)
private Long id;
}
Подтвердить без id
:
validator.validate(myBean);
Подтвердить id
:
validator.validate(myBean, UpdateBean.class);