|
|
|
Spring validation. Концептуальный вопрос, где размещать код проверки
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. У меня на работе возник такая проблема/вопрос. Мы используем javax.validation, реализация - hibernate. Т.е. есть сервис, который содержит примерно такой код (не суть) Код: java 1. 2. 3. 4. 5. 6. Сейчас он используется внутри методов служб, которые взаимодействуют с rest-службами. Используется не во всех, а только в тех, где это нужно, куда приходит DTO из Rest методов, т.е. примерно так OrderRestService -> DTO -> OrderService -> ValidationService. Мне такой не понравился, т.к. получается, что хотя не все методы содержат эту проверку, но валидация будет вызываться даже для методов внутренних служб (не rest), что все-таки бессмысленно. Но коллега аргументировал свой подход тем, что это best practices валидировать именно тут, т.к. не нужно будет в будущем, если появятся soap запросы (20% что так будет, если будет, то раз в 10 меньше по кол-ву rest служб)), встраивать и туда логику. Я предложил использовать aspect-ы, проверять откуда пришел вызов, если из rest то выполнять валидацию, если нет -пропускать или например, создать класс обертку, который будет содержать валидацию, стоять допол. слоем для rest/soap сервисов и вызывать сервис внутрен. служб. Эти предложения не нашли поддержки, аргументировалось тем, что это вносит усложнение в систему, не понятно зачем... Хочу узнать выше мнение, на каком этапе как у вас выполняется валидация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2013, 19:48:02 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=199&tid=2128155]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 347ms |

| 0 / 0 |
