restlet2.1 学习笔记(二) 分别处理Get Post Put请求

来源:互联网 发布:白石洲新塘网络 编辑:程序博客网 时间:2024/06/08 12:22

servlet只支持GET与POST两种请求。

但是restlet除了支持GET与POST请求外还支持Delete  Put  OPTIONS 等多种请求 。


第一步,编写资源类

(可以将资源类想象成Struts2的Action ,每个加上注解的方法都是一个ActionMethod)

MovieResource.java

package com.zf.restlet.demo02.server;import org.restlet.resource.Delete;import org.restlet.resource.Get;import org.restlet.resource.Post;import org.restlet.resource.Put;import org.restlet.resource.ServerResource;/** * 以3中Method为例 * @author zhoufeng * */public class MovieResource extends ServerResource{@Getpublic String play(){return "电影正在播放...";}@Postpublic String pause(){return "电影暂停...";}@Putpublic String upload(){return "电影正在上传...";}@Deletepublic String deleteMovie(){return "删除电影...";}}

第二步,使用html客户端访问(html默认只支持get与post访问。所以下面演示着两种)

demo02.html

<!DOCTYPE html><html><head><meta charset="UTF-8"><title>demo02</title></head><body><form action="http://localhost:8888/" method="get" target="_blank"><input type="submit" value="Get请求" />   </form><form action="http://localhost:8888/" method="post" target="_blank"><input type="submit" value="Post请求" />   </form>    </body></html>

访问该html通过两个按钮可以发送不同的请求,并会有不同的返回值



第三步:使用Restlet编写客户端调用

MovieClient.java

package com.zf.restlet.demo02.client;import java.io.IOException;import org.junit.Test;import org.restlet.representation.Representation;import org.restlet.resource.ClientResource;public class MovieClient {@Testpublic void test01() throws IOException{ClientResource client = new ClientResource("http://localhost:8888/");Representation result =  client.get() ;//调用get方法System.out.println(result.getText());  }@Testpublic void test02() throws IOException{ClientResource client = new ClientResource("http://localhost:8888/");  Representation result =  client.post(null) ;//调用post方法System.out.println(result.getText());  }@Testpublic void test03() throws IOException{ClientResource client = new ClientResource("http://localhost:8888/");  Representation result =  client.put(null) ;//调用put方法System.out.println(result.getText());  }@Testpublic void test04() throws IOException{ClientResource client = new ClientResource("http://localhost:8888/");  Representation result =  client.delete() ;//调用delete方法System.out.println(result.getText());  }}



原创粉丝点击