RESTful Web Service介绍

1. RESTful Web Service介绍

    REST(表述性状态转移)是Representational State Transfer的英文缩写;

    是web服务的一种架构风格;

    使用HTTP、URI等广泛流行的标准和协议;

    轻量级,跨平台,跨语言的架构设计;

2. REST是什么?

    是一种设计风格,不是一种标准,是一种思想.

    常用于HTTP、URI、XML、JSON以及HTML这些现有的广泛流行的协议和标准

3. RESTful是什么?

    RESTful对应的中文是REST式的;

    两种主要的web服务:

        JAX-RS RESTful Web Service

        JAX-WS Web Service

4. REST架构的主要原则

    网路上的所有事物都可被抽象为资源(resource)

    每个资源都有一个唯一的资源标识符(Resource Identifier)

    同一资源具有多种表现形式(xml、json等)

    对资源的各种操作不会改变资源标识符

    所有操作都是无状态的(Stateless)

    无状态性:

            无状态性使得客户端和服务器端不必保存对方的详细信息,服务器只需要处理当前request,而不必了解前面Request的历史,从而可以更容易地释放资源,让服务器利用Pool技术来提高稳定性和性能;


5. 资源操作

    在restful风格的访问中url地址尽可能简化

    http://xxx.com/orders/

        GET:        获取一个资源             get/query

        POST:      创建一个新的资源      save/query

        PUT:        修改一个资源的状态   update/query

        DELETE:   删除一个资源             delete/remove

        资源展现:        XML    JSON ........


6. 最佳实践

    REST接口设计

        URL的组成:

            网络协议(http,https)://服务器地址/接口名称/参数列表

        URL定义限定:

            不使用大写字母

            使用中线 - 代替下划线 _

            参数列表应该被encode过

    相应设计:

        Content body(响应体)仅仅用来传输数据

        数据要做到拿来就可用的原则,不需要"拆箱"的过程

        用来描述数据或者请求的原数据方Header中

7. SpringMVC实现RESTful服务时所涉及到的注解:

           @RequestMapping    映射地址的

                查询和删除时属性 value 中要有数据

                @RequestMapping(value="{username}" method=RequestMethod.GET)

                http://xxx.com/orders/张三

                添加和修改不用

           @PathVariable            解析url地址中的组成参数

                查询和删除时属性 value 中要有数据

                @PathVariable("id")     

           @ResponseBody        响应体转换

           ResponseEntity            设置状态吗

            

            默认情况下,PUT和DELETE请求是无法提交表单数据的。

            解决方案:在web.xml中配置Spring提供的过滤器解决。




        


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值