Is it a good practise to decouple input checking from a model and have it handled elsewhere, say by a controller? If so, how could this be done from an MVC or DDD standpoint?
It is a good practice to perform UI validation.
E.g. if Your domain object expects date time, it is correct if UI part of application ensures it will receive from user correct string, will parse it to date time and pass it to domain object.
Bad example: UI part validates if bank account has enough money for transfer.
However - can't give any tips how to implement properly this kind of validation in framework You are using (I'm not working with java).
Just don't keep it in controller. That is not controllers responsibility.
来源:https://stackoverflow.com/questions/3370413/decoupling-the-model-and-input-checking