-
Notifications
You must be signed in to change notification settings - Fork 27
Expand file tree
/
Copy pathPastDate.java
More file actions
40 lines (27 loc) · 923 Bytes
/
PastDate.java
File metadata and controls
40 lines (27 loc) · 923 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package com.zetcode;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
import javax.validation.constraints.Past;
import java.time.LocalDate;
import java.util.Set;
class Data {
@Past
private LocalDate date;
public Data(LocalDate date) {
this.date = date;
}
}
public class PastDate {
public static void main(String[] args) {
var data = new Data(LocalDate.of(2030, 12, 10));
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Data>> cvs = validator.validate(data);
System.out.println(cvs.size());
for (ConstraintViolation<Data> cv : cvs) {
System.out.printf("%s: %s%n", cv.getPropertyPath(), cv.getMessage());
}
}
}