如何优雅的进行入参数据校验?

简介: 【4月更文挑战第11天】如何优雅的进行入参数据校验?

对于应用程序入参的校验,可以说在任何时候都很重要,既可以保证应用程序的数据安全,又可以提高用户体验,防止不必要的无响应情况产生,那么。。。

在哪些场景下,你会进行入参数据校验的呢?

通常情况下,对于管理端项目,往往倾向于前端页面校验+后端入参数据检验双重验证,如果是内部系统的话那么没有外部人员访问,只进行前端页面校验也是可以的。

对于API接口项目,不管调用API接口的客户端是否进行入参数据校验,后端服务项目在接收到入参时都需要进行参数校验,以保证入参的合法性。

总的来说,工期允许的话,尽可能充分的入参校验可以保证您的系统稳定运行,同时保证程序的健壮性和应对非正常请求时的稳定性。

如何优雅的进行入参数据校验?你有哪些处理方式?

说到入参校验,最简单最传统最一目了然的方式可以说就是if-else了,就像这样

但是当入参比较多的时候,如果还是采用if-else的方式校验参数,那么代码量和可阅读性就会变得很差。

那么当一个方法接受很多必传参数时,那么我们可以通过注解的形式(比如 @RequestParam)来对入参进行校验,从而简化代码,提高代码的可读性

当然除了@RequestParam还有很多入参校验的注解,比如@NotEmpty @NotBlank @NotNull 等

或者也可以通过拦截器的方式来对公共参数进行统一校验,这样也可以减少业务逻辑代码的耦合性和代码量。自定义注解的方式也可以考虑,通过对不同形式的入参校验,返回不同的提示信息方便快速定位问题,这些都是可以的。

相关文章
|
7月前
|
设计模式 SQL Java
如何优雅的进行入参数据校验?
在开发中,入参数据校验至关重要,涉及API接口调用、业务逻辑处理和数据库操作等场景。优雅的处理方式包括使用注解、DTO、自定义校验器、AOP、全局异常处理和第三方库。这些方法能分离校验逻辑,提升代码可读性、可维护性和复用性,同时确保性能和安全性。
@RequestBody配合@Valid 校验入参参数
@RequestBody配合@Valid 校验入参参数
185 0
|
3月前
|
小程序
不要手动做数据校验
不要手动做数据校验
36 0
|
7月前
|
SQL API 数据库
优雅地进行入参数据校验:场景和处理方式
在日常的开发工作中,入参数据校验是确保程序健壮性的关键步骤之一,我们需要确保请求中的数据类型、格式和取值范围符合要求,以保证接口的安全性和稳定性,还有就是传递给方法或函数的数据需要满足一定的规则和要求,以保证程序的正常运行和数据的有效处理。那么本文就来分享一下在哪些场景下进行入参数据校验,并分享一些优雅的处理方式,以提高代码的可读性、扩展性和复用性。
116 3
优雅地进行入参数据校验:场景和处理方式
|
前端开发 Java 数据库
Spring Entity数据校验,分组校验,返回校验结果给前端
Spring Entity数据校验,分组校验,返回校验结果给前端
104 0
|
7月前
|
数据格式 Python
添加 常用校验方法,校验常见数据格式
添加 常用校验方法,校验常见数据格式
73 0
|
JSON 前端开发 Java
入参校验1
入参校验1
80 0
|
前端开发 Java API
数据校验(前端数据校验、JSR303校验)
数据校验(前端数据校验、JSR303校验)
269 0
|
前端开发 数据安全/隐私保护 容器
8.5请求数据校验
为了提高响应速度,一般在前端界面需要进行数据校验,但是在后端也需要对数据进行校验,以防止不正常的数据传入后台。 .net内置在`System.ComponentModel.DataAnnotations`命名空间下定义了很对检验规则`Attribute`,如[Required]表示必须为非空,[EmailAddress]表示必须为邮箱格式,[RegularExpression]可以用正则对数据进行限制,但是这样模型类和检验规则耦合性很强,不推荐使用。
GoFrame数据校验之校验对象 | 校验结构体
这篇文章将会为大家介绍GoFrame数据校验中校验对象的知识点,包括:Validator对象常用方法的介绍、单数据校验、校验Map、校验结构体的示例
181 0
GoFrame数据校验之校验对象 | 校验结构体