一,什么是RESTful
RESTful(RESTful Web Services)一种架构风格,表述性状态转移,它不是一个软件,也不是一个标准,而是一种思想,不依赖于任何通信协议,但是开发时要成功映射到某协议时也需要遵循其标准,但不包含对通信协议的更改
特征:
1.通过url地址来标识资源,系统中的每个对象或资源都可以通过其url地址来获取
2.统一接口,显式地使用HTTP方法,来进行crud(create,update,insert,delete)映射
创建资源使用POST
更新资源使用PUT
检索资源使用GET
删除资源使用DELETE
3.资源多重反映.通过url地址访问的每个资源都可以根据客户端的规定进行返回,例:JSON,XML。
RESTful服务适用web应用中创建服务的API,将资源以JSON或XML等数据格式进行暴露,从而可以更方便的让客户端进行调用
二.基于SpringMVC的RESTful服务
在SpringMVC中对RESTful支持,主要通过注解来实现
@Controller:声明一个处理请求的控制器
@RequestMapping:请求映射地址到对应的方法,该注解又可以分为一下几种类型:
@GetMapping
@PostMpping
@PutMapping
@DeleteMapping
@PatchMapping
@ResponsrBody:响应内容转换为JSON格式
@RequestBody:请求内容转换为JSON格式
@RestContrller:等同@Controller+@ResponsrBody
实例环境:
JDK1.8;
Maven3.5
Spring Boot Web Starter 2.0.0
整体API设计(基于用户管理模块):
Get/user:获取所有用户
Get/user/{id}:根据ID获取该用户信息
Post/insert:保存用户信息
Put/update:更新用户信息
Delete/delete/{id}:根据用户ID删除用户
Get/user/from:获取创建用户表单
Get/update/{id}:根据ID获取用户信息
Main控制器
application.properties
三. 安装Postman
下载地址:
三.运行,测试
运行完成,访问端口8080
1.Get
2.Post
3.Put
4.Delete
测试返回200状态,至此测试成功,RESTful服务的实现完成