您的位置:首页 > 编程语言 > Java开发

RESTful client for java

2011-12-31 13:29 155 查看
package com.hailiang.http;

import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class WeiboRestClient {
public final static String METHOD_GET="GET";
public final static String METHOD_PUT="PUT";
public final static String METHOD_DELETE="DELETE";
public final static String METHOD_POST="POST";

public static void rest(String serviceUrl,String parameter,String restMethod){
try {
URL url= new URL(serviceUrl);
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setRequestMethod(restMethod);
//如果请求方法为PUT,POST和DELETE设置DoOutput为真
if(!WeiboRestClient.METHOD_GET.equals(restMethod)){
con.setDoOutput(true);
if(!WeiboRestClient.METHOD_DELETE.equals(restMethod)){ //请求方法为PUT或POST时执行
OutputStream os = con.getOutputStream();
os.write(parameter.getBytes("UTF-8"));
os.close();
}
}
else{ //请求方法为GET时执行
InputStream in= con.getInputStream();
byte[] b= new byte[1024];
int result= in.read(b);
while( result!=-1){
System.out.write(b,0,result);
result= in.read(b);
}
}
System.out.println(con.getResponseCode()+":"+con.getResponseMessage());
} catch ( Exception e ) {

throw new RuntimeException(e );
}

}

public static void main(String args[]){

//	        //GET
//	        rest("http://localhost:8081/sqlrest/PRODUCT/4",null,WeiboRestClient.METHOD_GET);
//
//	        //PUT
//	        String put="<?xml version=\"1.0\" encoding=\"UTF-8\" ?><PRODUCT xmlns:xlink=\"http://www.w3.org/1999/xlink\"><NAME>Chair Shoe</NAME>"
//	  +"<PRICE>24.8</PRICE></PRODUCT>";
//	        rest("http://localhost:8081/sqlrest/PRODUCT/395",put,WeiboRestClient.METHOD_PUT);
//
//	        //POST
//	        String post="<?xml version=\"1.0\" encoding=\"UTF-8\" ?><PRODUCT xmlns:xlink=\"http://www.w3.org/1999/xlink\">"
//	      +"<PRICE>98</PRICE></PRODUCT>";
//	        rest("http://localhost:8081/sqlrest/PRODUCT/395",post,WeiboRestClient.METHOD_POST);
//
//	        //DELETE
//	        rest("http://localhost:8081/sqlrest/PRODUCT/395",null,WeiboRestClient.METHOD_DELETE);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: