原文链接:http://www.cnblogs.com/fredric/archive/2012/03/03/2378680.html
REST的例子
与web service类似,REST利用一个更加接近http的协议传递数据。
请求的目的地即是一个URI,数据的格式可以是XML、JSON或者是纯文本。
下面是一个在myeclipse 8.6上的REST小例子,还很不完善先记录下来。
部署REST服务:web service project, 选择了REST的web service
package com.test;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
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("customers")
@Singleton
public class Interface {
@GET
public String getCustomers(){
return "getCustomers all";
}
@GET
@Path("{id}")
public String getCustomer(@PathParam("id") String uid) {
return "your id is "+ uid;
}
}
客户端调用:java project
package com.app;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class app {
/**
* @param args
*/
public static void main(String[] args) throws MalformedURLException {
// TODO Auto-generated method stub
//实例一个URL资源
URL url = null;
try {
url = new URL("http://localhost:8080/java_ws01/services/customers");
//url = new URL("http://localhost:8080/java_ws01/services/customers/321");
HttpURLConnection connet;
connet = (HttpURLConnection) url.openConnection();
if(connet.getResponseCode() != 200){
throw new IOException(connet.getResponseMessage());
}
//将返回的值存入到String中
BufferedReader brd = new BufferedReader(new InputStreamReader(connet.getInputStream()));
System.out.println(brd.readLine());
connet.disconnect();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
转载于:https://blog.51cto.com/starpoir/1665280