URLConnection ist eine abstrakte Klasse, die zwei direkte Unterklassen hat: HttpURLConnection und JarURLConnection. Eine weitere wichtige Klasse ist URL. Normalerweise kann URL eine URL-Instanz generieren, die auf eine bestimmte Adresse verweist, indem ein Parameter vom Typ String an den Konstruktor übergeben wird.
Mit jeder HttpURLConnection-Instanz kann eine einzelne Anfrage gestellt werden, andere Instanzen können jedoch die zugrunde liegende Netzwerkverbindung transparent mit dem HTTP-Server teilen. Der Aufruf der close()-Methode für den InputStream oder OutputStream der HttpURLConnection nach der Anforderung gibt die dieser Instanz zugeordneten Netzwerkressourcen frei, hat jedoch keine Auswirkungen auf die gemeinsam genutzte dauerhafte Verbindung. Wenn die dauerhafte Verbindung beim Aufruf von „disconnect()“ inaktiv ist, ist der zugrunde liegende Socket möglicherweise geschlossen.
package com.newflypig.demo;/** * Verwenden Sie die eigene HttpURLConnection von JDK, um eine POST-Anfrage an die URL zu senden und das Antwortergebnis auszugeben. * Parameter werden mithilfe von Streams übergeben und im Format der Zeichenfolge „name=XXX“ fest codiert * /import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;import java.net.URLEncoder;public class SendPostDemo { public static void main(String[] args) throws Exception{ String urlPath = new String("http://localhost: 8080/Test1/HelloWorld"); //String urlPath = new String("http://localhost:8080/Test1/HelloWorld?name=DingDing".getBytes("UTF-8")); String param="name="+URLEncoder.encode("DingDing",UTF-8 "); //Verbindungs-URL herstellen url=new URL(urlPath); HttpURLConnection httpConn=(HttpURLConnection)url.openConnection(); //Parameter festlegen httpConn.setDoOutput(true); //Ausgabe erforderlich httpConn.setUseCaches(false); //Caching nicht zulassen httpConn.setRequestMethod("POST"); //POST-Verbindung festlegen //Anforderungseigenschaften festlegen httpConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); httpConn.setRequestProperty("Connection", "Keep-Alive");//Behalten Sie eine lange Verbindung bei httpConn.setRequestProperty("Charset", "UTF-8"); //Verbinden Sie, Sie können die folgende httpConn auch ohne Klartext verwenden connect. getOutputStream() stellt automatisch eine Verbindung her httpConn.connect(); //Eingabestream erstellen und den Parameter DataOutputStream dos=new an die URL übergeben, auf die verwiesen wird. DataOutputStream(httpConn.getOutputStream()); dos.flush(); //Erhalten Sie den Antwortstatus int resultCode=httpConn.getResponseCode(); if(HttpURLConnection.HTTP_OK== resultCode ){ StringBuffer sb=new StringBuffer(); String readLine=new String(); BufferedReader ResponseReader=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"UTF-8")); while((readLine=responseReader.readLine())!=null){ sb.append(readLine).append("/ n"); } ResponseReader.close(); System.out.println(sb.toString()); } }}
JAVA verwendet HttpURLConnection, um POST-Daten in Form eines OutputStream-Streams zu senden.
Während des spezifischen Kodierungsprozesses werden die Parameter in Form der Zeichenfolge „name=XXX“ gesendet.
Der oben genannte Inhalt wird in diesem Artikel beschrieben. Ich hoffe, dass diese Einführung für alle hilfreich ist.