教你一步步做restful程序(1)

11 篇文章 0 订阅
6 篇文章 0 订阅

教你一步步做 Restful程序(1)


  restful的介绍很多,同学们可以去网上找相应的概念描述。

  我对restful的理解:

  1、服务器端不再负责界面的生成,所有的界面显示均由调用者自己去处理。

  2、服务器端提供标准的api接口,按约定格式(json,xml或其它)返回数据。

  3、充分利用http协调,以简洁的url地址表达更丰富的含义。

  从上面列出的来看,restful架构将更有利于服务器端和客户端各自己的演进,对于多客户端应用优势明显,但是,开发一个restful程序也不一定完全按照restful标准去做。比如:状态信息一定完全由客户端维护?get、post、put、delete一定按标准含义去做?其实未必。

  下面通过一个用户登录及crud操作的实例,引导大家完成一个简单的restful程序。

  先说框架的选择,现在有很多java开源restful框架供大家选择,比如restlet,地址:http://www.restlet.org/,这东西做得不错,但我更倾向于在现有的mvc框架上提供restful的实现,因为按照传统的表现层、业务层、持久层分层架架构来看,restful架构对业务层和持久层是没有影响的,任何一个系统都有这两块,因此,变化的部分还是表现层,只是传统的mvc框架是服务器端自己负责生成页面内容,而restful则是服务器端提供统一格式的数据,而不做界面相关工作,从这一点上看,完全可以利用传统的mvc框架返回数据,也就是说,消弱传统mvc框架的页面渲染生成能力,而仅仅用其向调用者发回数据即可。这么做还有一个好处,一个应用系统也许并不是所有功能都需要移动终端去操作,还有很多功能可以按照传统的mvc模式去做,这样的架构也更加的灵活。

  struts2和spring mvc都对restful提供了支持,特别是spring mvc的支持非常完美,我们这个 demo将用spring mvc来实现。

  我们要做的第一步工作,是对整个系统的rul进行规划设计,请看我们的设计:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

  post          /loginSystem                            登录系统
  
  get            /userManager/getState             得到登录用户信息
  
  post          /userManager/upload_img        上传头像
  
  delete       /userManager/deleteUsers         批量删除用户
  
  post         /userManager/user                     添加新用户
  
  get           /userManager/users/1                查看第一页用户
  
  get           /userManager/user/1                 查看id号为1用户
  
  delete       /userManager/user/1                 删除id号为1用户
  
  put          /userManager/user/1                  修改id号为1的用户

  当然了,提交方式可以根据情况更改,比如:要传中文数据到服务器,get方式可以换成post方式,再比如修改,提交数据很不方便,可以将put换成post,这些变化,会使你的服务器端程序变得更简单。

  开发中会用到fiddler,以对请求响应进行跟踪。

本文转载于:http://yanyaner.com/blog/2012/12/28/restful1/

刘江华的博客!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值