在Java中进行数据校验通常使用Bean Validation框架,具体步骤如下:
添加依赖:在项目中添加Bean Validation框架的依赖,例如使用Hibernate Validator。
在Controller中使用校验注解:在Controller中的方法参数上使用校验注解,例如@Valid注解用于启用校验,@NotNull、@Size、@Pattern等注解用于具体的校验规则。
@RestController
public class UserController {
@PostMapping("/users")
public ResponseEntity<User> createUser(@Valid @RequestBody User user) {
// 处理用户创建逻辑
return ResponseEntity.ok(user);
}
}
@Documented
@Constraint(validatedBy = {UniqueUsernameValidator.class})
@Target({ElementType.FIELD, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
public @interface UniqueUsername {
String message() default "Username must be unique";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
public class UniqueUsernameValidator implements ConstraintValidator<UniqueUsername, String> {
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
// 校验逻辑
}
}
@PostMapping("/users")
public ResponseEntity createUser(@Valid @RequestBody User user, BindingResult result) {
if (result.hasErrors()) {
// 处理校验错误
return ResponseEntity.badRequest().body("Validation error");
} else {
// 处理用户创建逻辑
return ResponseEntity.ok(user);
}
}
通过上述步骤,可以在Java Controller中进行数据校验。