SpringBoot - 后端数据校验的实现

SpringBoot - 后端数据校验的实现通常来说,为了提高系统运行效率,都会在前端进行数据校验,但后端的数据校验仍然必不可少,因为用户还是可能在获取数据接口后手动传入非法数据,所以后端还是需要做数据校验。对于数据校验,Spring Boot 也提供了相关的自动化配置解决方案,下面通过样例进行演示。一、普通校验1,添加依赖首先编辑项目的pom.xml 文件,添加数据校验相关的依赖。<dependency> <groupId>org.springframewor
摘要由CSDN通过智能技术生成

SpringBoot - 后端数据校验的实现

通常来说,为了提高系统运行效率,都会在前端进行数据校验,但后端的数据校验仍然必不可少,因为用户还是可能在获取数据接口后手动传入非法数据,所以后端还是需要做数据校验。
对于数据校验,Spring Boot 也提供了相关的自动化配置解决方案,下面通过样例进行演示。

一、普通校验

1,添加依赖

首先编辑项目的pom.xml 文件,添加数据校验相关的依赖。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-validation</artifactId>
</dependency>

2,创建校验出错的提示文件
在 resources 目录下创建一个 ValidationMessages.properties 文件(默认的创建校验出错的提示文件),里面内容如下:

注意:如果文件里的中文内容出现乱码,可以参考我之前写的文件来解决:
SpringBoot - 配置文件application.properties使用
user.name.size=用户名长度介于5到10个字符之间
user.address.notnull=用户地址不能为空
user.age.size=年龄输入不正确
user.email.notnull=邮箱不能为空
user.email.pattern=邮箱格式不正确

3,数据校验配置
接下来创建一个 User 类,并配置相关的数据校验:

@NoArgsConstructor
@Setter
@Getter
public class User  {
    // @Size 注解表示一个字符串的长度或者一个集合的大小,必须在某一个范围中
    @Size(min = 5, max = 10, message = "{user.name.size}")
    private String name;
 
    // @NotEmpty 注解表示该字段不能为空
    @NotEmpty(message = "{user.address.notnull}")
    private String address;
 
    // @DecimalMin 注解表示对应属性值的下限
    @DecimalMin(value = "1", message = "{user.age.size}")
    // @DecimalMax 注解表示对应属性值的上限
    @DecimalMax(value = "200", message = "{user.age.size}")
    private Integer age;
 
    // @Email 注解表示对应属性格式是一个 Email
    @Email(message = "{user.email.pattern}")
    // @NotNull 注解表示该字段不能为null
    @NotNull(message = "{user.email.notnull}")
    private String email;
}
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值