SpringMVC开发RESTful接口】的更多相关文章

概念: 什么是REST? REST是Representational State Transfer的缩写.翻译为"表现层状态转化",restful是一种接口设计风格,它不是一个协议,通常是基于HTTP协议的; 为什么需要这么一个风格呢? RESTful的重点之一就是统一的接口命名规则; 每个开发者可能会有不同的接口风格,最常见的就类似于于getUserInfo,deleteUserInfo等等.....,但是这个纯粹是跟每个开发者的习惯有关,多人协同开发时就可能会产生问题,特别是前后台…
一:任务 1.任务 Spring Boot中默认的错误机制处理机制 自定义异常处理 二:Spring Boot中的默认错误处理机制 1.目前 浏览器访问的时候, restful 接口主要是根据状态码进行判断的. 2.新建 如果想对404做处理 3.404.html 4.效果 所以访问一个页面 三:自定义异常处理 1.说明 客户端 服务器返回异常信息只包含错误信息,有时候还需要返回其他的信息的时候. 2.exception的信息改变 控制器 // @RequestMapping(value="/u…
一:编写用户详情服务 1.任务 @PathVariable隐射url片段到java方法的参数 在url声明中使用正则表达式 @JsonView控制json输出内容 二:@PathVariable 1.@PathVariable小测试 测试类 @Test public void whenGetInfoSuccess() throws Exception { //发送请求 mockMvc.perform(MockMvcRequestBuilders.get("/user/1") .cont…
一:任务 1.任务 常用的验证注解 自定义返回消息 自定义校验注解 二:Hibernate Validator 1.常见的校验注解 2.程序 测试类 /** * @throws Exception * 更新程序,主要是校验程序的验证 * */ @Test public void whenUpdateSuccess() throws Exception { //JDK1.8的特性 Date date=new Date(LocalDateTime.now().plusYears(1). atZone…
一:主要任务 1.说明 @RequestBody 映射请求体到java方法的参数 日期类型参数的处理 @Valid注解 BindingResult验证请求参数的合法性并处理校验结果 二:@RequestBody 1.@RequestBody 测试类 /** * @throws Exception * */ @Test public void whenCreateSuccess() throws Exception { String content="{\"username\"…
一:介绍说明 1.介绍 2.restful api的成熟度 二:编写Restful API的测试用例 1.引入spring的测试框架 在effective pom中查找 2.新建测试包,测试类 3.测试用例程序 package com.cao.web.controller; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.bean…
RESTful 相信在座的各位对于RESTful都是略有耳闻,那么RESTful到底是什么呢? REST(Representational State Transfer)表述性状态转移是一组架构约束条件和原则.满足这些约束条件和原则的应用程序或设计就是RESTful.需要注意的是,REST是设计风格而不是标准.REST通常基于使用HTTP,URI,和XML(标准通用标记语言下的一个子集)以及HTML(标准通用标记语言下的一个应用)这些现有的广泛流行的协议和标准. 也许这段话有些晦涩难懂,换个角度…
需求 移动互联网时代的到来,软件开发的模式也在变化.记得以前做B/S的后台开发,基本上没有Http接口一说,全部是通过渲染模板技术(jsp,freemark)把最终html展示给最终用户.现在完全变了,基于后台接口提供方,我们从来不是针对只是浏览器展示的后台输出,而是各种终端,比如android,ios.所以设计接口的时候一定要小心,一旦放出去的接口可能就永远都难以变动(除非你强制客户端用户升级).我们知道,Restful API已经成为接口设计的一个业务准则.如果你还不是很清楚什么是Restf…
非rest的url写法: 查询 GET /user/query?name=tom 详情 GET /user/getinfo? 创建 POST /user/create?name=tom 修改 POST /user/update?&name=tom 删除 GET /user/delete? rest风格的写法 查询 GET /user?name=tom 详情 GET /user/ 创建 POST /user 修改 PUT /user 删除 DELETE /user/ 1.Rest概念,来自百度百科…
昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确.方便快速开发 - 针对pc,手机,ipad,微信,支付宝... 使用同一个接口 2. 简述http协议? - 基于socket - 数据格式: "GET /index?name=123&age=19 http1.1\r\nhost:www.luffyciti.com\r\ncontent-type:application/json...\r\n\r\n" "POST /index…