Afficher les messages de validation
Vous avez mis en place des annotations comme contrôle de qualité sur les données de ventes de jeux vidéo. Exécutez maintenant la validation sur des données contenant des erreurs pour voir quels messages s'affichent. Les mauvaises données n'ont pas de platform, ont une year antérieure à 1960 et des sales négatives, ce qui enfreint les contraintes précisées dans les annotations. Validez les données de ventes de jeux vidéo et affichez tous les messages de non-respect.
Les modules jakarta ont été importés pour vous.
Cette activité fait partie du cours
Nettoyer des données en Java
Instructions de l’exercice
- Affichez le message de non-respect lorsqu'une contrainte est enfreinte par les données.
- Validez la vente de jeu vidéo en appliquant le
validator.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
public class VideoGameSale {
@NotNull(message = "Name cannot be empty")
private String name;
@NotNull(message = "Platform cannot be empty")
private String platform;
@Min(value = 1960, message = "Year must be greater than 1960")
private Integer year;
@Min(value = 0, message = "Sales amount must be positive")
private Double sales;
public VideoGameSale(String name, String platform, Integer year, Double sales) {
this.name = name;
this.platform = platform;
this.year = year;
this.sales = sales;
}
public static void main(String[] args) {
VideoGameSale sale = new VideoGameSale(
"Super Mario Bros.", null, 1950,
-29.08);
Set> violations =
SalesValidator.validateSale(sale);
// Print the violation message
violations.forEach(violation ->
System.out.println(____.____()));
if (!violations.isEmpty()) throw new ConstraintViolationException(violations);
}
}
class SalesValidator {
private static final ValidatorFactory factory =
Validation.buildDefaultValidatorFactory();
private static final Validator validator = factory.getValidator();
public static Set> validateSale(VideoGameSale sale) {
// Validate the video game sale
return ____.____(sale);
}
}