isValid? Проверка всей сущности на валидность?
2) Как isValid будет проверять на уникальность мыла? Ходить в репозиторий и чекать есть ли у меня чувак с таким мылом? Както слишком много будет уметь делать этот isValid
3) Если вешать isValid на preFlush и валидировать весь обьект полностью каждый раз только перед flush - на сколько в этом есть смысл, если я меняю одно свойство? и что мне делать по всему приложению, если в таком случае я допускаю что у меня может бродить там невалидный обьект?
1) да 2) в репо точна не должна ходить ) тогда другой вариант. Создаёшь отдельный сервис-валидатор и там валидируешь что хочешь у своей ентити. Укажешь конкретно какой валидатор на какой ентите висит 3) да, весь объект полностью. Мыло к примеру можешь не валидировать если оно не изменилось. Не валидные объекты ты не можешь допускать никак. У тебя получается инконсистентность. Так нельзя делать. Пришл невалидный объект - пока не сделаешь валидным - нельзя сейвить в базу.
Обсуждают сегодня