@Valid校验参数
import javax.validation.Valid;
给实体类属性添加注解校验
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;
import java.util.Date;
@ToString
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Person {
@Min(value = 18,message = "未成年人")
private Integer age;
@NotEmpty(message = "不能为空")
private String name;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date birthday;
}
测试类:
@RestController
public class Demo1 {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
/**
使用@Valid校验Person属性,结果绑定到BindingResult
*/
@PostMapping("/update")
public Result update(@Valid Person person , BindingResult bindingResult){
if(bindingResult.hasErrors()){
List<ObjectError> errorList = bindingResult.getAllErrors();
for(ObjectError error : errorList){
logger.info(error.getDefaultMessage());
}
}
return null;
}
}
测试: