什么是RestFul?
Restful就是一个资源定位、资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
资源:互联网所有的事物都可以被抽象为资源
资源操作:分为POST、DELETE、PUT、GET四种方法,使用不同方法对资源进行操作(增、删、改、查)
传统风格与RestFul风格对比
传统风格代码
@Controller
public class RestFulController {
@RequestMapping(value = "/add",method = RequestMethod.GET)
public String test(int a, int b, Model model){
int res=a+b;
model.addAttribute("msg","结果:"+res);
return "hello";
}
}
RequestMethod的参数的含义:RequestMethod的参数的含义是?_乔治大哥的博客-CSDN博客_requestmethod
看源码,它是个枚举类
GET(SELECT):从服务器查询,可以在服务器通过请求的参数区分查询的方式。
POST(CREATE):在服务器新建一个资源,调用insert操作。
PUT(UPDATE):在服务器更新资源,调用update操作。
DELETE(DELETE):从服务器删除资源,调用delete语句
HEAD:请求一个与GET请求的响应相同的响应,但没有响应体.
CONNECT :建立一个到由目标资源标识的服务器的隧道。
OPTIONS : 用于描述目标资源的通信选项。
TRACE : 沿着到目标资源的路径执行一个消息环回测试。
PATCH : 用于对资源应用部分修改。
组合注解
@GetMapping:扮演的是@RequestMapping(method =RequestMethod.GET) 的快捷方式。
@PostMapping
@PutMapping
@DeleteMapping
@PatchMapping
url相同也能实现不同的方法
浏览器地址栏进行访问默认是Get请求