在日常的接口开发中,为了保证接口的稳定安全,我们一般需要在接口逻辑中处理两种校验:
- 参数校验
- 业务规则校验
首先我们先看看参数校验。
参数校验
参数校验很好理解,比如登录的时候需要校验用户名密码是否为空,创建用户的时候需要校验邮件、手机号码格式是否准确。
而实现参数校验也非常简单,我们只需要使用Bean Validation
校验框架即可,借助它提供的校验注解我们可以非常方便的完成参数校验。
常见的校验注解有:
@Null、@NotNull、@AssertTrue、@AssertFalse、@Min、@Max、@DecimalMin、@DecimalMax、@Negative、@NegativeOrZero、@Positive、@PositiveOrZero、@Size、@Digits、@Past、@PastOrPresent、@Future、@FutureOrPresent、@Pattern、@NotEmpty、@NotBlank、@Email复制代码
在SpringBoot中集成参数校验我特意写了一篇文章,感兴趣的可以点击阅读。SpringBoot 如何进行参数校验,老鸟们都这么玩的!
接下来我们再看看业务规则校验。
业务规则校验
业务规则校验指接口需要满足某些特定的业务规则,举个例子:业务系统的用户需要保证其唯一性,用户属性不能与其他用户产生冲突,不允许与数据库中任何已有用户的用户名称、手机号码、邮箱产生重复。
这就要求在创建用户时需要校验用户名称、手机号码、邮箱是否被注册;编辑用户时不能将信息修改成已有用户的属性