参数验证——javax.validation

这篇博客介绍了如何利用javax.validation进行优雅的参数验证,包括内置注解的基本使用,如自定义注解的详细步骤,以及源码分析。内容涵盖自定义注解的定义、实现和使用,同时探讨了验证的原理,强调了ValidatorFactory接口和HibernateValidator的实现角色。总结中指出,验证是通过注解+反射的方式,并依赖工厂模式来扩展。
摘要由CSDN通过智能技术生成

优雅的参数验证——javax.validation

1.相关环境

1.基本环境
jdk 1.8
maven 3.2.5
springboot 2.1.5.RELEASE
2.相关依赖
 	<!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>
        <!--hutool-->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-core</artifactId>
            <version>5.0.6</version>
        </dependency>

2.使用

1.基本使用——内置注解

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vKQE9Bie-1590145275534)(https://www.xupeng.life/upload/2020/2/image-eef483deec1b413d8ae3646f0a73e9f2.png)]
例如:在我们接受前台的参数时候,可以使用javax.validation进行校验,只需要打上对应的注解就可以完成基本的验证

public class TestDto {
    @NotBlank(message = "{user.register.username.not-blank}")
    private String userName;
}

拓展:将对应的非法内容统一放置到对应的ValidationMessages.properties,
位置为src/main/resources下
注意:中文乱码 需要将properties的编码设置为UTF-8,在yml设置

spring:
  messages:
    encoding: UTF-8

例如

user.register.username.not-blank=用户名不可为空

2.拓展使用—自定义注解

我们需

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值