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

这是提前准备好的接口文档


新建UserController


接收的参数用对象的形式

controller下新建vo的包,然后新建登陆接口需要的对象类LoginReqVO

下面这个时候就要写数据的验证了,一般都要几十行的验证代码。

提供另外一种方法

这个方法只能做一些基础的验证。因为没有办法注入逻辑层啊数据层啊这些。所以只能做一些公共的基础验证。

这样我们的loginVO继承BaserRequestVO然后去实现这个方法

这样你的controller里面这一行代码就去验证数据源的合法性

自定义exception

两个属性一个全参的构造方法
 
如果出错了就抛出异常

这样我们的loginVO也需要抛出这个异常

controller内的方法也直接抛出去

新建基础工具类


404就是未找到资源,username和password有一个为空就抛出异常。

改成中文

异常一直往上抛出,最后抛到UserController

结束

原文地址:https://www.cnblogs.com/wangjunwei/p/12687872.html

时间: 2024-07-31 09:56:44

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

Drf04 / drf request请求对象封装、版本、认证、权限

目录 Drf04 / drf request请求对象封装.版本.认证.权限 回顾和补充 今日详细 1.请求的封装 2.版本 3.认证(面试) 4.权限 Drf04 / drf request请求对象封装.版本.认证.权限 回顾和补充 restful规范 1. 建议用https代替http 2. 在URL中体现api,添加api标识 https://www.cnblogs.com/xwgblog/p/11812244.html # 错误 https://www.cnblogs.com/api/xw

请求对象&响应对象

请求对象&响应对象WEB服务器会针对每一个客户端发出的HTTP请求,分别的创建一个请求对象和一个响应对象如果需要获取客户端提交的数据,需要使用请求对象如果需要向客户端发送一些数据,需要使用响应对象响应对象HttpServletResponse封装了向客户端发送数据,发送响应头,以及发送响应码等功能 请求对象HttpServletRequest请求对象封装了HTTP协议的请求行,请求头,请求体我们可以通过请求对象的方法来获取这些信息 获取请求行 StringBuffer getRequestURL

C#-WebForm-★内置对象简介★Request-获取请求对象、Response相应请求对象、Session全局变量(私有)、Cookie全局变量(私有)、Application全局公共变量、ViewState

内置对象: 1.Request - 获取请求对象 用法:接收传值 protected void Page_Load(object sender, EventArgs e) { TextBox1.Text = Request["abc"]; } 2.Response - 相应请求对象 用法:(李献策lxc) 1.执行代码 //点击按钮执行代码 void Button1_Click(object sender, EventArgs e) { Response.Write("<

原生js和jquery发送ajax请求及封装

原生js                                   // ajax get 五部曲function ajax_get(url,data){ // 异步对象 var ajax=new XMLHttpRequest(); // 设置url和请求方式 // url方法 如果有数据要把数据拼接到url中?name=jack&age=20 if(data){ url+=?; url+=data; }else{}; ajax.open('get',url); // 发送请求 aja

Servlet的学习之Request请求对象(3)

本篇接上一篇,将Servlet中的HttpServletRequest对象获取RequestDispatcher对象后能进行的[转发]forward功能和[包含]include功能介绍完. 首先来看RequestDispatcher对象的“转发”功能: 在<Servlet的学习(五)>中说过,使用ServletContext对象的getRequestDispatcher方法可以获得转发对象RequestDispatcher对象,将请求进行转发给其他的Servlet或者JSP处理,同时在该篇的结

通用ajax请求方法封装,兼容主流浏览器

ajax简介 没有AJAX会怎么样?普通的ASP.Net每次执行服务端方法的时候都要刷新当前页面.如果没有AJAX,在youku看视频的过程中如果点击了"顶.踩".评论.评论翻页,页面就会刷新,视频就会被打断.开发一个看效果:用<video src="diaosi.mp4" autoplay controls></video>播放视频(只有支持html5的浏览器能播放),然后放一个"赞"按钮的功能(赞的数量存到数据库),看

3.3-面向对象(封装)

3.3 封装(Encapsulation) 封装:是指隐藏对象的属性和实现细节,仅对外提供 公共访问方式. 好处: ?  将变化隔离. ?  便于使用. ?  提高重用性. ?  提高安全性. 封装原则: ?  将不需要对外提供的内容都隐藏起来. ?  把属性都隐藏,提供公共方法对其访问. /* 人: 属性: 年龄. 行为: 说话. */ /* private:私有,是一个权限修饰符.用于修饰成员. 私有的内容只在本类中有效. 注意:私有仅仅是封装的一种体现而已. */ class Person

使用NSURLConnection的网络请求与封装

访问网络的方式: 1.同步请求: 会阻塞主线程 2.异步请求: 无法取消 请求过程在多线程执行 基本流程: 1.构造NSURL实例. 2.生成NSURLRequest请求. 3.通过NSURLConnection发送请求. 4.通过NSURLRespond实例和NSError实例分析结果. 5.接受返回数据. 使用NSURLConnection发起异步请求: 第一种方法: - (void)setUrl:(NSURL *)url { //使用同异步请求网络 NSMutableURLRequest

javascript中Ajax请求的封装代码

/****************************ajax请求 start**************************************/ function ajaxClass(_url, _successCallback, _failureCallback, _urlParameters, _callbackParams, _async, _charset, _timeout, _frequency, _requestTimes, _frame) { /** * AJAX