Bean Validation - Bean Validation
Bean Validation definiuje model metadanych oraz API dla JavaBeans walidacji. Źródło metadanych jest adnotacji , z możliwością przedłużenia do nadpisania i metadane dzięki zastosowaniu XML deskryptorów walidacji.
Pierwotnie zdefiniowany jako część Java EE , wersja 2 ma pracować w Java SE aplikacje, jak również.
Java Bean Validation ( JSR 303 ) powstało jako ram , który został zatwierdzony przez JCP na dzień 16 listopada 2009 roku i zaakceptowany jako część Java EE specyfikacji 6. Hibernacji Zespół zapewnia z Hibernate Validator na realizację odniesienia Bean Validation a także stworzył Bean Validation TCK każdą realizację JSR 303 musi przejść.
Obecna wersja
Fasola Walidacja 2.0 jest określona przez JSR 380 zatwierdzone 2017-07-31. To główne wydanie wykorzystuje możliwości językowe w Java 8, które są bardzo przydatne dla celów Bean Validation. Tak Java 8 jest wymagana jako minimalna wersji Java.
Inne zmiany obejmują:
- Wsparcie dla sprawdzania elementów kontenera przez komentowania argumentów typ parametrycznych typów, np List <Integer> positiveNumbers @Positive; obejmuje to również:
- Bardziej elastyczne kaskadowo walidacja rodzaju zbiórki; np wartości i klucze mapy mogą być zatwierdzone teraz: Mapa <@Valid CustomerType, @Valid klienta> customersByType
- Wsparcie dla java.util.Optional
- Wsparcie dla typów własności deklarowanych przez JavaFX
- Wsparcie dla niestandardowych typów kontenerów poprzez podłączenie dodatkowych wirówek wartości
- Wsparcie dla nowych typów danych daty / godziny dla @Past i @Future; precyzyjną kontrolę nad zmiany strefy czasowej i czasu stosuje się do walidacji
- Nowe wbudowane ograniczenia: @Email, @NotEmpty, @NotBlank, @Positive, @PositiveOrZero, @Negative, @NegativeOrZero, @PastOrPresent i @FutureOrPresent
- Wszystkie wbudowane ograniczenia są oznaczone jako powtarzalny teraz
- Nazwy parametrów są pobierane przy użyciu odbicia
- ConstraintValidator # initialize () jest metodą domyślną
- Przestrzeń nazw Bean Validation deskryptorów XML został zmieniony na http://xmlns.jcp.org/xml/ns/validation/configuration dla meta- INF / validation.xml i http://xmlns.jcp.org/xml/ns / walidacja / mapowanie dla więzów plików mapowania
Poprzednia wersja
Fasola Walidacja 1,1 ( JSR 349 ) podnosi się na pierwszej wersji 1.0 ( JSR 303 ). Istotne zmiany obejmują:
- Walidacja argumentów metoda i wartości zwracanej
- Dependency Injection
- Bardziej otwarty proces w rozwoju specyfikacji
Ostatecznej wersji specyfikacji 1,1 nastąpiło 2013-05-24.