Heim > Java > JavaBase > So rufen Sie die Java-Schnittstelle auf (mit Code)

So rufen Sie die Java-Schnittstelle auf (mit Code)

Freigeben: 2019-11-26 09:28:21
Original
3388 Leute haben es durchsucht

So rufen Sie die Java-Schnittstelle auf (mit Code)

Java ruft die Schnittstellenmethode auf:

package com.lwl.api.provider.demo.test;
 
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.HttpURLConnection;
import java.net.URL;
 
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("接口调用数据:"+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) {
        System.out.print(e.getMessage());
    }
    }
}
Nach dem Login kopieren

Erste URL restURL = neue URL(URL); die URL hier ist die Zielschnittstellenadresse, die sein muss Angepasst, URL-Klasse ist eine Klasse unter java.net.*, was nicht unbekannt ist.

setRequestMethod("POST"); Die Anforderungsmethode hat zwei Werte zur Auswahl, einer ist GET und der andere ist POST. Wählen Sie die entsprechende Anforderungsmethode

setDoOutput(true); setDoInput(true );

setDoInput() : // Legen Sie fest, ob an httpUrlConnection ausgegeben werden soll. Da es sich um eine Post-Anfrage handelt, müssen die Parameter im http-Body platziert werden und daher auf true gesetzt werden. Der Standardwert ist false;

setDoOutput(): //Legen Sie fest, ob von httpUrlConnection gelesen werden soll, was standardmäßig true ist;

setAllowUserInteraction();allowUserInteraction Wenn true, erfolgt dies in einem Kontext Ermöglicht Benutzerinteraktion (z. B. das Öffnen eines Bestätigungsdialogfelds). Überprüfen Sie diese URL.

Die Abfrage im folgenden Code wird in der Form „attribut=value“ übertragen. Wenn mehrere Abfragen vorliegen, wird sie in der Form „attribut=value&attribute=value“ übertragen Der Server kümmert sich selbst darum.

Wie erstelle ich dieses Formular? Der einfachste und schnellste Weg ist hier: Java fügt die Map in „parameter = value & parameter = value“ zusammen.

close(); Erstellen Sie einen Stream, um den Rückgabewert zu schreiben oder zu lesen .

Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.

Das obige ist der detaillierte Inhalt vonSo rufen Sie die Java-Schnittstelle auf (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage