Tenho uma dúvida com relação a validação de dados no Controller, trabalho num sistema legado onde é feito da seguinte forma:
- São submetidos dados do front-end para o controller
- No controller recebo o Form com os dados vindo do front-end
- Realizo validações de negócio neste Form: nome não é nulo, cpf é válido, etc.
- Instâncio o objeto de domínio com os dados já validados
Como vocês fazem: validam primeiro o form pra depois criar o objeto de domínio OU instanciam o objeto de domínio com dados brutos vindos do form e depois validam o objeto de domínio?
Em frameworks mais novos como Spring MVC, o objeto de domínio já vem instânciado automaticamente no controller, vejo como uma boa prática pois posso encapsular a validação das regras dentro do próprio objeto e não em todas as classes que eventualmente precisem utilizar o mesmo, tendo por base isso gostaria de melhorar meu código legado.