-
REST: 即Representational State Transfer(资源)表现层状态转化,是目前最流行的一种互联网软件架构,它:
易于理解、结构清晰、符合标准、扩展方便; - 资源: (Resources)网络上的一个实体,或者说是网络上的具体信息,可以是一段文本、一张图片、一首歌曲、一种服务····,总之就是一种具体的存在,可以用URI(统一资源定位符)指向它,每种资源对应一个特定的URI,如果要获取该资源,访问他的URI就可以了,因此URI即为每一个资源的独一无二的识别符;
- 表现层:(Representational) 把资源具体呈现出来的形式,比如文本可以用txt、HTML、json等格式表现,甚至二进制格式,
-
状态转化:(State Transfer) 每发出一次请求,就代表客户端和服务器的一次交互HTTP协议是一种无状态协议,即所有的状态都保存在服务器端,因此:
如果客户想要操作服务器,必须通过某种手段,让服务器发生状态转化,而这种转化是建立在表现层之上,所以就是转化层状态转化
具体来说就是:HTTP协议里面四个表示操作方式的动词,get,post,put,delete。相对数据库的增删改查操作
动作 | 说明 | 示例 |
---|---|---|
GET | 获取资源 | -/order/id |
POST | 新建资源 | -/order |
PUT | 更新资源 | -/order/id |
DELETE | 删除资源 | -/order/id |
@RequestMapping("/rest")
@Controller
public class RESTtest {
//GET
@RequestMapping("/GetTest/{id}")
public String getSub(@PathVariable(value="id") Integer id) {
System.out.println("get提交"+id);
return "success";
}
//POST
@RequestMapping(value="/PostTest",method=RequestMethod.POST)
public String postSub() {
System.out.println("post提交");
return "success";
}
}
<body>
//get示例
<a href="rest/GetTest/12">获取信息</a>
//post示例
<form method="post" action="rest/PostTest">
<input value="POST" type="submit"/>
</form>
</body>
</html>
浏览器form表单只支持get与post请求
- HidedenHttpMethodFilter:Spring 3.0 新增加的过滤器,使得这些方法可以转换为标准的HTTP方法,使得支持get,post,put,delete请求;
网友评论