RESTFUL原理及实现
(2017-10-19 20:03:43)分类: 系统开发 |
1.1参考资料
http://www.blogjava.net/soken/articles/371548.html
Spring RESTful风格url示例
http://www.xdemo.org/spring-restful/
SpringMVC+RestFul详细示例实战教程:写的比较详细了http://blog.csdn.net/xinyuan_java/article/details/46696703
1.2原理
一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。
基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
REST(英文:Representational State Transfer,简称REST)描述了一个架构样式的网络系统,比如 web 应用程序。
在目前主流的三种Web服务交互方案中,REST相比于SOAP(Simple Object Access protocol,简单对象访问协议)以及XML-RPC更加简单明了。
REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。
Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。
所有资源都共享统一的接口,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如
GET、PUT、POST
另一个重要的 REST 原则是分层系统,这表示组件无法了解它与之交互的中间层以外的组件。
1.3程序实现
以下程序基于SpringMVC实现。
@Controller
@RequestMapping("/wuser")
public
//1、GET 获取
//(1)获取全部
@RequestMapping(method=RequestMethod.GET)
public ModelAndView index(){}
///前端调用方式:
//url=wuser
//(2)按ID获取
@RequestMapping(method=RequestMethod.GET,value="{id}")
public ModelAndView viewUser(@PathVariable("id")String id){}
//前端调用方式:
//2、POST 提交/新建
@RequestMapping(method=RequestMethod.POST)
public ModelAndView addUser(Wuser user){}
//前端调用方式:
//
//3、PUT 更新
@RequestMapping(method=RequestMethod.PUT)
public ModelAndView edit(Wuser user){}
//前端调用方式:
//
//
//4、DELETE 删除
@ResponseBody
@RequestMapping(method=RequestMethod.DELETE,value="{id}")
public String deleteUser(@PathVariable("id")String id){}
//前端调用方式:
//5、按ID修改
@RequestMapping("{id}/edit")
public ModelAndView toEdit(@PathVariable("id")String id){}
//前端调用方式:
//6、批量删除 删除的参数由request中取得
@RequestMapping(method=RequestMethod.DELETE)
public ModelAndView batchDelete(HttpServletRequest request,HttpServletResponse response) {}
}