Errors Intermédiaire

Utilisez des records pour des types de réponse d'erreur concis et immutables.

✕ Java 8
// Verbose error class
public class ErrorResponse {
    private final int code;
    private final String message;
    // constructor, getters, equals,
    // hashCode, toString...
}
✓ Java 16+
public record ApiError(
    int code,
    String message,
    Instant timestamp
) {
    public ApiError(int code, String msg) {
        this(code, msg, Instant.now());
    }
}
Un problème avec ce code ? Dites-le nous.
📏

Concis

Définissez des types d'erreur en 3 lignes au lieu de 30.

🔒

Immutable

Les données d'erreur ne peuvent pas être modifiées accidentellement après leur création.

📋

toString automatique

Parfait pour la journalisation — affiche tous les champs automatiquement.

Ancienne Approche
Map ou classe verbose
Approche Moderne
Records d'erreur
Depuis JDK
16
Difficulté
Intermédiaire
Réponses d'erreur basées sur des records
Disponible

Disponible depuis JDK 16 (mars 2021)

Les records sont parfaits pour les réponses d'erreur — ils sont immutables, ont equals/hashCode intégrés pour la comparaison, et toString pour la journalisation. Les constructeurs personnalisés permettent d'ajouter de la validation ou des valeurs par défaut.

Partager 𝕏 🦋 in