Validierungsnachrichten anzeigen
Du hast Annotationen als Qualitätskontrolle für Daten zu Videospielverkäufen eingerichtet. Führe nun die Validierung mit fehlerhaften Daten aus, um zu sehen, welche Meldungen ausgegeben werden. Bei den fehlerhaften Daten fehlt eine platform, das year liegt vor 1960 und sales sind negativ – das verletzt die in den Annotationen festgelegten Constraints. Validiere die Videospielverkaufsdaten und gib alle Fehlermeldungen aus.
jakarta-Pakete wurden bereits für dich importiert.
Diese Übung ist Teil des Kurses
<Kurs>Datenbereinigung in Java</Kurs>Übungsanweisungen
- Gib die Fehlermeldung aus, wenn die Daten einen Constraint verletzen.
- Validiere den Videospielverkauf, indem du den
validatoranwendest.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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);
}
}