七叶笔记 » java编程 » java中调用接口的实例教程

java中调用接口的实例教程

1、首先URL restURL = new URL(url);这其中的url就是需要调的目标接口地址,URL类是java.net.*下的类。

2、setRequestMethod("POST");请求方式是有两个值进行选择,一个是GET,一个是POST,选择对应的请求方式

3、setDoOutput(true);setDoInput(true);

setDoInput():  // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认是false;   setDoOutput():   // 设置是否从httpUrlConnection读入,默认情况下是true;

4、setAllowUserInteraction();allowUserInteraction 如果为 true,则在允许用户交互(例如弹出一个验证对话框)的上下文中对此 URL 进行检查。

5、下面代码的query是以 属性=值 传输的,若是多个则是 属性=值&属性=值 这种形式传递的,传递给服务器,让服务器自己去处理。

6、close();创建流进行写入或读取返回值,创建用完后记得关闭流。

实例教程:

package com.c;import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.PrintStream;import java.net.HttpURLConnection;import java.net.URL;import java.util.HashMap;import java.util.Map;public class RestUtil {    public String load(String url,String query) throws Exception    {        URL restURL = new URL(url);        /*         * 此处的urlConnection对象实际上是根据URL的请求协议(此处是http)生成的URLConnection类 的子类         HttpURLConnection         */        HttpURLConnection conn = (HttpURLConnection) restURL.openConnection();        //请求方式        conn.setRequestMethod("POST");        //设置是否从httpUrlConnection读入,默认情况下是true; httpUrlConnection.setDoInput(true);        conn.setDoOutput(true);        //allowUserInteraction 如果为 true,则在允许用户交互(例如弹出一个验证对话框)的上下文中对此 URL 进行检查。        conn.setAllowUserInteraction(false);        PrintStream ps = new PrintStream(conn.getOutputStream());        ps.print(query);        ps.close();        BufferedReader bReader = new BufferedReader(new InputStreamReader(conn.getInputStream()));        String line,resultStr="";        while(null != (line=bReader.readLine()))        {        resultStr +=line;        }        System.out.println("3412412---"+resultStr);        bReader.close();        return resultStr;    }         public static void main(String []args) {try {            RestUtil restUtil = new RestUtil();            String resultString = restUtil.load(                    "http://192.168.10.89:8080/eoffice-restful/resources/sys/oaholiday",                    "floor=first&year=2017&month=9&isLeader=N");            } catch (Exception e) {            // TODO: handle exception            System.out.print(e.getMessage());            }        }}

推荐教程:Java教程

相关文章