J'utilise la classe Préconditions de Google pour valider les données d'entrée de l'utilisateur.
Mais je suis inquiet de savoir où est le meilleur point de vérifier les données d'entrée de l'utilisateur en utilisant la classe Preconditions.
D'abord, j'écrit le code de vérification de validation dans le contrôleur comme ci-dessous:Vérifier les conditions préalables dans la couche Contrôleur ou Service
@Controller
...
public void register(ProductInfo data) {
Preconditions.checkArgument(StringUtils.hasText(data.getName()),
"Empty name parameter.");
productService.register(data);
}
@Service
...
public void register(ProductInfo data) {
productDao.register(data);
}
Mais je pense que la méthode register
dans la couche de service serait d'utiliser une autre méthode de contrôleur comme ci-dessous:
@Controller
...
public void register(ProductInfo data) {
productService.register(data);
}
public void anotherRegister(ProductInfo data) {
productService.register(data);
}
@Service
...
public void register(ProductInfo data) {
Preconditions.checkArgument(StringUtils.hasText(data.getName()),
"Empty name parameter.");
productDao.register(data);
}
D'autre part , la méthode de couche de service serait utilisée dans un seul contrôleur.
J'étais confus. Quelle est la meilleure façon de vérifier les conditions préalables du contrôleur ou du service?
Merci d'avance.
Décidément d'accord que vous devriez utiliser la validation du bean, surtout si votre DAO utilise ORM. – hyness