3-7 公共请求对象封装及优雅验证数据实现

Posted wangjunwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3-7 公共请求对象封装及优雅验证数据实现相关的知识,希望对你有一定的参考价值。

这是提前准备好的接口文档
技术图片
技术图片
新建UserController
技术图片

技术图片
接收的参数用对象的形式
技术图片
controller下新建vo的包,然后新建登陆接口需要的对象类LoginReqVO
技术图片

技术图片

技术图片

下面这个时候就要写数据的验证了,一般都要几十行的验证代码。
技术图片
提供另外一种方法
技术图片
这个方法只能做一些基础的验证。因为没有办法注入逻辑层啊数据层啊这些。所以只能做一些公共的基础验证。
技术图片
这样我们的loginVO继承BaserRequestVO然后去实现这个方法
技术图片

这样你的controller里面这一行代码就去验证数据源的合法性
技术图片
自定义exception
技术图片

技术图片

两个属性一个全参的构造方法
技术图片 
如果出错了就抛出异常
技术图片
这样我们的loginVO也需要抛出这个异常
技术图片
controller内的方法也直接抛出去
技术图片

新建基础工具类

技术图片

技术图片


技术图片
404就是未找到资源,username和password有一个为空就抛出异常。
技术图片
改成中文
技术图片
异常一直往上抛出,最后抛到UserController
技术图片


结束

以上是关于3-7 公共请求对象封装及优雅验证数据实现的主要内容,如果未能解决你的问题,请参考以下文章

优雅设计封装基于Okhttp3的网络框架(完):原生HttpUrlConnction请求多线程分发 及 数据转换

常见的公共函数封装方法(密码强度手机号验证邮箱验证输入金额验证)

后羿框架-公共子框架-报文封装

uniapp封装公共请求typescript版

uniapp封装公共请求typescript版

封装的概述及好处