mule,spring构建resful应用服务

来源:互联网 发布:怎么开淘宝店铺步骤 编辑:程序博客网 时间:2024/06/07 00:11

什么是resful

REST是一种架构风格,其核心是面向资源,REST专门针对网络应用设计和开发方式,以降低开发的复杂性,提高系统的可伸缩性。REST提出设计概念和准则为:

  1. 网络上的所有事物都可以被抽象为资源(resource)
  2. 每一个资源都有唯一的资源标识(resource identifier),对资源的操作不会改变这些标识
  3. 所有的操作都是无状态

REST简化开发,其架构遵循CRUD原则,该原则告诉我们对于资源(包括网络资源)只需要四种行为:创建,获取,更新和删除就可以完成相关的操作和处理。您可以通过统一资源标识符(Universal Resource Identifier,URI)来识别和定位资源,并且针对这些资源而执行的操作是通过 HTTP 规范定义的。其核心操作只有GET,PUT,POST,DELETE。

由于REST强制所有的操作都必须是stateless的,这就没有上下文的约束,如果做分布式,集群都不需要考虑上下文和会话保持的问题。极大的提高系统的可伸缩性。

springmvc rest 实现

springmvc的resturl是通过@RequestMapping 及@PathVariable annotation提供的,通过如@RequestMapping(value=”/blog/{id}”,method=RequestMethod.DELETE)即可处理/blog/1 的delete请求.

@RequestMapping(value="/blog/{id}",method=RequestMethod.DELETE)  public ModelAndView delete(@PathVariable Long id,HttpServletRequest request,HttpServletResponse response) {      Object.removeById(id);      return new ModelAndView(LIST_ACTION);  }  ![这里写图片描述](http://img.blog.csdn.net/20150706112612604)

@RequestMapping @PathVariable如果URL中带参数,则配合使用,如

@RequestMapping(value="/blog/{blogId}/message/{msgId}",method=RequestMethod.DELETE)  public ModelAndView delete(@PathVariable("blogId") Long blogId,@PathVariable("msgId") Long msgId,HttpServletRequest request,HttpServletResponse response) {  }  

具体点详细配置可以参考http://www.blogjava.net/badqiu/archive/2009/09/22/296082.html

mule实现

mule整合了Jersey实现rest
具体使用方法为选择rest组件
然后添加类便可以,具体操作可以参考这篇博客
Mule ESB 学习笔记mule和jersey的整合使用

0 0
原创粉丝点击