SpringBoot(五)_表单验证

本文介绍如何在SpringBoot项目中实现表单验证,通过@Valid和BindingResult简化参数校验过程,包括实体类注解定义及控制器实现,并提供测试案例。

SpringBoot(五)_表单验证

参数校验在我们日常开发中非常常见,最基本的校验有判断属性是否为空、长度是否符合要求等,在传统的开发模式中需要写一堆的 if else 来处理这些逻辑,很繁琐,效率也低。使用 @Valid + BindingResult 就可以优雅地解决这些问题

(1)首先在实体类中增加注解

@Entity
public class Girl  {


    @Id
    @GeneratedValue
    private int id;

    @NotEmpty(message = "姓名不能为空")
    private String name;

    @Min(value = 18,message = "未成年禁止入内")
    private int age;

    public Girl() {
    }

(2) 在controller 中增加@Valid + BindingResult

    @PostMapping("/girls")
    public Girl girlAdd(@Valid Girl girl, BindingResult bindingResult){
        if(bindingResult.hasErrors()){
 
            System.out.println(bindingResult.getFieldError().getDefaultMessage());
            return  null;
        }
        return girlRepository.save(girl);
    }

(3) 测试结果

未成年禁止入内

结果显示均已经触发了校验规则,返回了错误信息,在实际使用过程中可以对错误信息进行包装,最后返回到前端进行展示。

转载于:https://www.cnblogs.com/zhenghengbin/p/9126322.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值