MyEclipse开发Rest服务入门

MyEclipse支持Rest服务,开发起来非常方便,下面我就举一个计算机的例子:
实现功能:加、减、乘、除;

效果如下:





Rest服务要点:每个服务或任何东西都有一个URI;

步骤1:创建Web Service Project;




步骤2:创建class


package org.xiazdong.service; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import com.sun.jersey.spi.resource.Singleton; @Produces("text/plain") @Path("calculator") @Singleton public class MyService { @GET //设置此服务为get请求的服务 @Path("add/{id}") //FirstRest/calculator/add/1+1 public String add(@PathParam("id") String s){ String[]ss = s.split("\\+"); return s+"="+String.valueOf(Integer.parseInt(ss[0])+Integer.parseInt(ss[1])); } @GET @Path("sub/{id}") //FirstRest/calculator/add/1-1 public String sub(@PathParam("id") String s){ String[]ss = s.split("\\-"); return s+"="+String.valueOf(Integer.parseInt(ss[0])-Integer.parseInt(ss[1])); } @GET @Path("mult/{id}") //FirstRest/calculator/add/1*1 public String mult(@PathParam("id") String s){ String[]ss = s.split("\\*"); return s+"="+String.valueOf(Integer.parseInt(ss[0])*Integer.parseInt(ss[1])); } @GET @Path("div/{id}") //FirstRest/calculator/add/1~1 public String div(@PathParam("id") String s){ String[]ss = s.split("~"); return s+"="+String.valueOf(Integer.parseInt(ss[0])/Integer.parseInt(ss[1])); } }
@POST //设置此服务为post请求的服务 @Path("add") public String add(@FormParam("tt") String s){ //tt为表单的textfield的name String[]ss = s.split("\\+"); return s+"="+String.valueOf(Integer.parseInt(ss[0])+Integer.parseInt(ss[1])); }


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

REST和RPC之间的区别。

  • REST强调资源有唯一的URI;而RPC更加强大过程(动词),由统一的接口来调用它们。
  • REST回归HTTP最初的设计;RPC仅仅只是把HTTP作为传输协议来使用。
  • REST是由超文本驱动的;RPC是由方法驱动的。
  • REST强调HTTP通信的语义可见性,通过消息头和标准的HTTP方法来体现;RPC把语义封装在HTTP消息体中。



使用方法: 1、下载工程文件; 2、将工程文件导入到eclipse等,或者直接进行发布,如直接将工程放到【tomcat】/webapps/下即可。 3、搜索整个工程文件,将字符串8080改为你自己服务器的IP; 4、启动服务器。 测试方法: 1、main函数测试 打开Client类,运行main函数可测试post和delete方法; 2、进行单个Application测试: 1)返回所有学生信息:http://localhost:8080/RestApplication/rest/student 2)执行Client类的main函数,添加一条学生信息; 3)重复1); 4)获取ID=1的单个学生信息:http://localhost:8080/RestApplication/rest/student/1 5)打开http://localhost:8080/RestApplication/update.jsp页面,输入相关信息,提交;如果提交失败,请检查页面表单的 action属性值是否正确; 6)重复4),查看信息被修改的情况; 3、使用Component绑定多个Application 本代码源自转自【http://www.lifeba.org/arch/restlet_develop_application_component_2.html 】但有改动,主要改动有: 1. 修改了web.xml的段,使工程既可以访问rest服务,又可以访问普通的页面资源,不用再像原作者那样再单独部署一个页面工程。 2. 由于【1】的改动,使得只有以/rest开头的URL才能映射到某资源,使用rest服务时,必须要加上/rest。 3. 由于【1】的改动,RestComponent类注册application时将资源字符串加上了/rest。 4. 由于【1】的改动和本人WEB服务器端口号的不同,Client测试类的相关资源字符串也做了相应改动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值