#spring #spring-boot #spring-mvc #spring-data-jpa #spring-data
#весна #весенняя загрузка #spring-mvc #spring-data-jpa #spring-данные
Вопрос:
Есть ли способ в Spring boot проверить свойства в компоненте? Например, рассмотрим компонент Employee, состоящий из следующих свойств —
- идентификатор — должен начинаться с 01,02,22
- Отдел — должен быть любым из одного — D1, D2, D3
- Имя — не должно содержать цифр и иметь максимальную длину 10 символов.
У меня может быть отдельный метод и проверять компонент каждый раз, но я ищу лучший способ реализовать это с помощью spring boot.
Комментарии:
1. Взгляните на проверки JSR 380.
2. создайте свое пользовательское правило проверки, docs.jboss.org/hibernate/validator/5.1/reference/en-US/html /…
3. Вы можете выполнить проверку в своей службе, чтобы проверить, готов ли сотрудник к сохранению или нет
Ответ №1:
Вы могли бы использовать проверку Spring boot для проверки ваших шаблонов. Добавьте эту зависимость в реализацию вашего файла gradle (‘org.springframework.boot:spring-boot-starter-validation’)https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-validation проверьте последнюю версию
class Employee {
@Pattern(regexp = "^(01|02|22). $")
private String id;
@Size(max = 10)
@Pattern(regexp = "^[^0-9] $")
private String name;
@Pattern(regexp = "^D[1-3]$")
private String department;
}
И в вашем запросе
@RestController
class EmployeeRequest {
@PostMapping("/registerEmployee")
ResponseEntity<String> registerEmployee(@Valid @RequestBody Employee employee) {
return ResponseEntity.ok("valid");
}
}
Примечание: Я не уверен в синтаксисе регулярного выражения, но вы должны определить свое регулярное выражение для своих бизнес-требований.