[JAVA] Federvalidierung und Fehlercode

Annotation zur Datenbindung

Eine in der Domänenklasse verwendete Anmerkung.

Anmerkung Erläuterung Beispiel
@NumberFormat Konvertiert eine Zeichenfolge im angegebenen Format in einen numerischen Typ. @NumberFormat(pattern="#,###")
@DateTimeFormat Konvertiert eine Zeichenfolge im angegebenen Format in den Datumstyp. @DateTimeFormat(pattern="yyyy/MM/dd")

Form.java


import org.springframework.format.annotation.DateTimeFormat;

public class SignupForm {

  @DateTimeFormat(pattern="yyyy/MM/dd")
  private Date birthday;
}

Datenbindungsfehlermeldung

Erstellen Sie messages.properties im resouces-Verzeichnis und schreiben Sie wie folgt. Nach dem Gleichheitszeichen sind keine doppelten Anführungszeichen erforderlich.

Muster Beschreibungsmethode Beschreibungsbeispiel
typeMismatch.<ModelAttribute-Schlüsselname>.= typeMismatch.signupForm.age=Bitte gebe eine Nummer ein
typeMismatch.= typeMismatch.age=Bitte gebe eine Nummer ein
typeMismatch.= typeMismatch.int=Bitte gebe eine Nummer ein

Liste der Validierungsanmerkungen

Eine in der Domänenklasse verwendete Anmerkung.

Einstufung Anmerkung Erläuterung
Bean Validation @NotNull Stellen Sie sicher, dass es nicht null ist
@NotEmpty Stellen Sie sicher, dass die Zeichenfolge oder Sammlung nicht null oder leer ist
@NutBlank Stellen Sie sicher, dass die Zeichenfolge nicht nur null, leer oder leer ist
@Max Überprüfen Sie, ob der angegebene Wert kleiner oder gleich ist
@Min Überprüfen Sie, ob der angegebene Wert überschritten wird
@Size Überprüfen Sie, ob die Länge der Zeichenfolge und die Größe der Sammlung innerhalb des angegebenen Bereichs liegen
@AssertTrue Überprüfen Sie, ob dies der Fall ist
@AssertFale Überprüfen Sie, ob false
@Pattern Überprüfen Sie, ob es mit dem angegebenen regulären Ausdruck übereinstimmt
@Email Überprüfen Sie, ob die Zeichenfolge die Form einer E-Mail-Adresse hat
Hibernate Validator @Range Überprüfen Sie, ob der Wert innerhalb des angegebenen Bereichs liegt
@Length Überprüfen Sie, ob die Länge der Zeichenfolge innerhalb des angegebenen Bereichs liegt
@CreditCardNumber Überprüfen Sie, ob die Zeichenfolge im Kreditkartennummernformat vorliegt
@URL Überprüfen Sie, ob die Zeichenfolge im URL-Format vorliegt

Unterschiede zwischen NotNull NotEmpty Not Blank

Bei ** NG ** tritt ein Fehler auf.

Anmerkung null Leere Zeichen Leer
@NotNull NG OK OK
@NotEmpty NG NG OK
@NotBlank NG NG NG

Form.java


//Wenn die Klassifizierung Bean Validation ist
// javax.validation.Aus Einschränkungen importieren
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Email;
import javax.validation.constraints.Pattern;

//Die Klassifizierung ist Hibernate Validator
// org.hibernate.validator.Aus Einschränkungen importieren
import org.hibernate.validator.constraints.Length;

public class SignupForm {
  
  //Erforderliche Eingabe, E-Mail-Adressformat
  @NotBlank
  @Email
  private String userId;

  @Length(min=4, max=8)
  @Pattern(regexp="^[a-zA-Z0-9]+$")
  private String password;
}

Validierungsfehlermeldung

Fügen Sie die gleichen messages.properties wie die Datenbindungsfehlermeldung hinzu

Muster Beschreibungsmethode Beschreibungsbeispiel
.<ModelAttribute-Schlüsselname>.= NotBlank.signupForm.userId=Bitte geben Sie Ihre Benutzer-ID ein
.= NotBlank.uerId=Bitte geben Sie Ihre Benutzer-ID ein
.= NotBlank.java.lang.Sting ≒ erforderliche Eingabe
= NotBlank=Erforderliche Eingabe
<Eindeutiger Schlüsselname>= require_check=Erforderlich

Recommended Posts

Federvalidierung und Fehlercode
Über Fehler bei der Implementierung der Federvalidierung
Fehler bei der Implementierung bei der Implementierung der Spring-Validierung
Spring Boot Whitelabel-Fehlerseite und JSON-Antwort
Selbstgemachte Validierung mit Spring
Informationen zum Spring Framework-Kontextfehler
Gemeinsame Verarbeitung und Fehlerverarbeitung springmvc
Signieren und Validieren mit java.security.Provider
Abrufen von Fehlerinformationen mithilfe von DefaultErrorAttributes und ErrorAttributeOptions in Spring Boot 2.3
Fehler in der Spring-Datenbankverbindung
Frühlingstest zur Überprüfung einzelner Artikel
Ändern Sie die Spring Boot-Validierungsnachricht
bitFlyer Lightning-Fehlercode-Sammlung
Die Frühjahrsvalidierung war in der Reihenfolge von Form und BindingResult wichtig
Lesen und generieren Sie QR-Code [Android]
Java's Angry Code 5 Auswahl und Korrekturen
Überprüfungspunkte für den Spring Boot-Anwendungscode
Spring Boot + PostgreSQL-Fehlerbehebungsmethode
Codebeispiel für OVal (annotationsbasierte Validierung FW)
Java Spring-Umgebung in vs Code
Schreiben Sie den Testcode mit Spring Boot
[Rails] Unerwarteter Validierungsfehler im Gerät
Spring Boot Programmierung mit VS Code
Java 9 neue Funktionen und Beispielcode
Erhalten Sie Validierungsergebnisse mit Spring Boot
Versuchs- und Fehlernotiz für die fließende Schnittstelle
[Rails] Validierungseinstellungen und japanische Lokalisierung
Spring-Profilfunktion und Spring Boot application.properties
Commit fehlgeschlagene Fehlerbehebung für Exit-Code 1