Size: a a a

2020 November 04

V

Vladimir in learn.java
на null у меня есть валидация
источник

D

Dima in learn.java
hibernate validator и аннотации используете?
источник

V

Vladimir in learn.java
да
источник

D

Dima in learn.java
что касается уникальности - тут возможно два момента:

проверка в бизнес-слое и исключение
перехват исключения, попытка понять, что оно связано с уникальностью - свое исключение
источник

D

Dima in learn.java
я бы просто сделал ручную проверку на уникальность
источник

V

Vladimir in learn.java
т.е перед вставкой, select a from Course a where a.name = :name ?)
источник

V

Vladimir in learn.java
что то вроде такого?
источник

D

Dima in learn.java
например
источник

D

Dima in learn.java
или вообще написать запрос, возвращающий boolean
источник

D

Dima in learn.java
чтобы всю сущность не тянуть
источник

V

Vladimir in learn.java
с JdbcTemplate я просто ловил что то , что бросается из базы и оборачивал в свой DaoException. Было проще))
источник

V

Vladimir in learn.java
Dima
чтобы всю сущность не тянуть
спасибо
источник

t

tikkitavy in learn.java
если метод возвращает объект, но по нормальному и int ошибки должен бы вернуть, какие есть способы это провернуть не кидая эксепшены и не делая новый класс обертку для объекта и ошибки внутри этой обертки? мож паттерн какой хитрый? 🤔
источник

V

Vlad in learn.java
tikkitavy
если метод возвращает объект, но по нормальному и int ошибки должен бы вернуть, какие есть способы это провернуть не кидая эксепшены и не делая новый класс обертку для объекта и ошибки внутри этой обертки? мож паттерн какой хитрый? 🤔
В java принятый подход обрабатывать ошибки исключениями. Поэтому код ошибки не возвращают. Несколько значений из функции нельзя вернуть(без объекта). Поэтому ответ никак
источник

g

guga in learn.java
tikkitavy
если метод возвращает объект, но по нормальному и int ошибки должен бы вернуть, какие есть способы это провернуть не кидая эксепшены и не делая новый класс обертку для объекта и ошибки внутри этой обертки? мож паттерн какой хитрый? 🤔
стандартно никак, можешь использовать try или either из vavr
источник

t

tikkitavy in learn.java
чот не прикольно на каждый вариант ошибки фигачить кастомный эксепшен
источник

g

guga in learn.java
хм, а с кодом ошибки было бы не так?
источник

t

tikkitavy in learn.java
ну инт он жеж просто инт, а тут целый класс
источник

g

guga in learn.java
можешь юзать Either<Result, Long> где лонг код ошибки
источник

g

guga in learn.java
ну или колхозно возвращать Tuple2<Result, Long> но ты пытаешься натянуть сову не глобус
источник