Maison  >  Article  >  Java  >  Comment utiliser la fonction URLConnection en Java pour les opérations réseau

Comment utiliser la fonction URLConnection en Java pour les opérations réseau

王林
王林original
2023-06-26 18:10:531205parcourir

Java, en tant que langage de programmation multiplateforme, est souvent utilisé pour développer des applications réseau. Que vous développiez des robots d'exploration Web ou effectuiez des communications réseau, Java fournit de nombreuses bibliothèques de classes liées au réseau. Parmi eux, le plus basique dans les opérations réseau est la classe URLConnection. Cet article explique comment utiliser la classe URLConnection pour les opérations réseau.

1. Présentation de la classe URLConnection

URLConnection est la classe de base en Java utilisée pour accéder aux ressources connectées aux URL. Il fournit un mécanisme extensible pour accéder aux ressources. Vous pouvez définir les paramètres de requête, établir des connexions, écrire des données et lire des réponses via la méthode setRequestProperty. URLConnection peut gérer plusieurs types de ressources URL : HTTP, HTTPS, FTP, etc.

2. Construction d'URL

URLConnection est construit en Java et vous devez d'abord construire un objet URL pour accéder aux ressources réseau. Vous pouvez utiliser la classe URL sous le package java.net pour construire un objet URL. Le constructeur de la classe URL est le suivant :

public URL(String spec) renvoie MalformedURLException ;

Parmi eux, spec est une adresse URL sous la forme d'une chaîne. Par exemple :

URL url = new URL("http://www.example.com/file.txt");

3. Connexion et configuration d'URLConnection

1. Établir une connexion

URL.openConnection( ) méthode Renvoie un objet URLConnection connecté à la ressource. Par exemple :

URLConnection conn = url.openConnection();

2. Définir les paramètres de la requête

URLConnection fournit des API pour définir les paramètres des requêtes HTTP, par exemple :

conn.setRequestMethod("GET");// Définir la méthode de requête

Parmi elles, les méthodes de requête disponibles sont GET, POST, HEAD, PUT, DELETE, TRACE, OPTIONS et CONNECT.

conn.setDoOutput(true);//La sortie est-elle autorisée

conn.setDoInput(true);//La saisie est-elle autorisée

conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 10.0 ; Win64 ;

3. Établissez une connexion et écrivez des données

La méthode URLConnection.connect() tentera de se connecter à la ressource, mais elle n'enverra pas la demande immédiatement et elle ne pourra pas savoir si le serveur prend en charge la méthode demandée. Vous devez appeler la méthode setDoOutput(true) pour définir les données de sortie autorisées avant d'appeler la méthode getOutputStream() pour obtenir le flux de sortie. Par exemple :

conn.setDoOutput(true);

OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream());

out.write("name=value");//Écrivez les données qui doivent être envoyées
out .flush( );
out.close();

4. Lire la réponse

Lors de l'obtention de la réponse du serveur, vous pouvez appeler la méthode getInputStream() pour obtenir le contenu de la réponse du serveur et le convertir en données lisibles. par le programme. Par exemple :

BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));

String line;

while ((line = in.readLine()) != null) {

System.out.println(line);

}

in. close ();


4. Exemple complet

Ce qui suit est un exemple complet pour lire des données XML distantes et analyser son contenu :

importer java.io.BufferedReader ;

importer java.io.InputStreamReader ;

importer java.net .URL;
import java.net.URLConnection;

public class URLConnectionExample {

public static void main(String[] args) throws Exception {
    URL url = new URL("http://www.example.com/sample.xml");
    URLConnection conn = url.openConnection();
    conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3");
    BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    String line, xml = "";
    while ((line = in.readLine()) != null) {
        xml += line;
    }
    in.close();
    System.out.println("XML content: "+xml);
}

}

Ce qui précède explique comment utiliser la classe URLConnection pour les opérations réseau. Vous pouvez définir les paramètres de la requête via la méthode setRequestProperty et lire le contenu de la réponse via la méthode getInputStream. Utilisez la classe URLConnection pour implémenter des opérations réseau de base, telles que la lecture de HTML, XML et d'autres contenus Web. Parallèlement, pour certaines opérations réseau plus complexes, d'autres bibliothèques réseau peuvent également être utilisées pour le développement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn