使用Hibernate Validator进行Spring Boot后端数据校验(2)
导读:使用Hibernate,通过控制台的输出可以看到,校验框架将我们的多个属性都进行了数据校验(默认行为) ,如果我们希望只要有一个属性校验失败就直接返回提示信息,
使用Hibernate

通过控制台的输出可以看到,校验框架将我们的多个属性都进行了数据校验(默认行为),如果我们希望只要有一个属性校验失败就直接返回提示信息,后面的属性不再进行校验了该如何实现呢?

【步骤六】:创建ValidatorConfiguration类,指定校验时使用快速失败返回模式
import org.hibernate.validator.HibernateValidator;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.beanvalidation.MethodValidationPostProcessor;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
/**
* @author springboot葵花宝典
* @description: TODO
*/
@Configuration
public class ValidatorConfiguration {
@Bean
public Validator validator() {
ValidatorFactory validatorFactory =
Validation.byProvider(HibernateValidator.class)
.configure()
//快速失败返回模式
.addProperty("hibernate.validator.fail_fast", "true")
.buildValidatorFactory();
return validatorFactory.getValidator();
}
/**
* 开启快速返回
* 如果参数校验有异常,直接抛异常,不会进入到 controller,使用全局异常拦截进行拦截
*/
@Bean
public MethodValidationPostProcessor methodValidationPostProcessor() {
MethodValidationPostProcessor postProcessor =
new MethodValidationPostProcessor();
/**设置validator模式为快速失败返回*/
postProcessor.setValidator(validator());
return postProcessor;
}
}
启动项目,访问地址:http://localhost:8888/student/save,通过控制台输出可以看到已经可以进行数据校验了,如下:

通过控制台的输出可以看到,虽然我们输入的数据有多个都不符合校验规则,但是只有一个校验失败异常信息,这说明已经开启了快速失败返回模式。

以上分享的使用Hibernate、Validator进行Spring 和 Boot后端数据校验的相关内容,希望对您有所帮助!
相关阅读
-
网络设备日志级别一般分为哪几类?都适用在何种场景?
正文核心导读:网络设备日志级别一般分为哪几类的电脑方面的小经验,接下来IT袋网小编为大家介绍。 在华为设备中,涉及到日志的,我们经常会在日志级别上迷糊,本文就给大家介绍8种日
-
zblogphp后台固定域名导致网站无法访问解决方法
zblog后台设置固定域名之后,有时候服务器证书到期了或者更换了域名就导致网站无法正常访问了,连后台也打不开,进不去 ,针对这个问题,下面IT袋小编就给各位网站长分享解决方法,希望
-
IDPS的原理和作用详解 IDPS的工作原理和作用简介
如果想知道IDPS的原理和作用详解方面的介绍,下面来一起了解一下吧。 1. 流量监控与实时分析 IDPS的第一个原理是实时流量监控和分析。 它在网络中部署传感器,监控传入和传出的数据流。
-
探究分布式技术:理解其定义与工作原理
这些知识你了解吗?探究分布式技术的介绍,一定能解决您的问题的,一起来了解吧! 在当今信息时代,数据和应用服务的规模迅速扩大,对于高效、稳定和可扩展的系统的需求也在持续增加


