在Spring Boot中,可以使用注解来处理表单验证。常用的注解有@NotNull
、@NotEmpty
、@Size
、@Pattern
等。可以在实体类的属性上添加这些注解来进行表单验证。
另外,还可以使用@Valid
注解来验证嵌套对象,例如:
public class User {
@NotNull
private String username;
@NotNull
@Size(min=6, max=20)
private String password;
@Valid
private Address address;
// getters and setters
}
public class Address {
@NotEmpty
private String city;
@NotEmpty
private String postalCode;
// getters and setters
}
然后在Controller中使用@Valid
注解来验证表单数据:
@RestController
public class UserController {
@PostMapping("/user")
public ResponseEntity<String> addUser(@Valid @RequestBody User user) {
//处理用户数据
return ResponseEntity.ok("User added successfully");
}
}
如果验证不通过,会抛出MethodArgumentNotValidException
异常,可以使用@ExceptionHandler
注解来处理异常,返回自定义的错误信息。
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(MethodArgumentNotValidException.class)
public ResponseEntity<String> handleValidationException(MethodArgumentNotValidException ex) {
//处理异常
return ResponseEntity.badRequest().body("Validation error: " + ex.getBindingResult().getFieldError().getDefaultMessage());
}
}
这样就可以在Spring Boot中使用注解来处理表单验证。