编程触发DTO校验

手工触发DTO校验

使用Spring Boot架构,通常会在DTO上做NotBlank,NotNull,NotEmpty校验,然后再接口处加@Valid注解触发校验。但是有些情况,我们希望编程方式触发校验。实现代码如下:

DTO中增加Save或Update类接口,并维护group属性
在这里插入图片描述
在这里插入图片描述
注入javax.validation.Validator对象,然后再调用其api


```java

@Autowired
private javax.validation.Validator globalValidator;
   /**省略*/
// 针对DTO上面的注解校验
Set<ConstraintViolation<TransactionAmortize>> validate = globalValidator.validate(item, TransactionAmortize.Save.class);
if (!validate.isEmpty()) {
    for (ConstraintViolation<TransactionAmortize> userDTOConstraintViolation : validate) {
        // DTO为空校验
        errorDesc.append(userDTOConstraintViolation.getMessage()).append(";");
    }
}
   /**省略*/```

参考:


 [1]: https://segmentfault.com/a/1190000023471742#item-2-9 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值