API java : java.net


Package java.net

Provides the classes for implementing networking applications.

See:
          Description

Interface Summary
ContentHandlerFactory This interface defines a factory for content handlers.
DatagramSocketImplFactory This interface defines a factory for datagram socket implementations.
FileNameMap A simple interface which provides a mechanism to map between a file name and a MIME type string.
SocketImplFactory This interface defines a factory for socket implementations.
SocketOptions Interface of methods to get/set socket options.
URLStreamHandlerFactory This interface defines a factory for URL stream protocol handlers.
 

Class Summary
Authenticator The class Authenticator represents an object that knows how to obtain authentication for a network connection.
CacheRequest Represents channels for storing resources in the ResponseCache.
CacheResponse Represent channels for retrieving resources from the ResponseCache.
ContentHandler The abstract class ContentHandler is the superclass of all classes that read an Object from a URLConnection.
CookieHandler A CookieHandler object provides a callback mechanism to hook up a HTTP state management policy implementation into the HTTP protocol handler.
DatagramPacket This class represents a datagram packet.
DatagramSocket This class represents a socket for sending and receiving datagram packets.
DatagramSocketImpl Abstract datagram and multicast socket implementation base class.
HttpURLConnection A URLConnection with support for HTTP-specific features.
Inet4Address This class represents an Internet Protocol version 4 (IPv4) address.
Inet6Address This class represents an Internet Protocol version 6 (IPv6) address.
InetAddress This class represents an Internet Protocol (IP) address.
InetSocketAddress This class implements an IP Socket Address (IP address + port number) It can also be a pair (hostname + port number), in which case an attempt will be made to resolve the hostname.
JarURLConnection A URL Connection to a Java ARchive (JAR) file or an entry in a JAR file.
MulticastSocket The multicast datagram socket class is useful for sending and receiving IP multicast packets.
NetPermission This class is for various network permissions.
NetworkInterface This class represents a Network Interface made up of a name, and a list of IP addresses assigned to this interface.
PasswordAuthentication The class PasswordAuthentication is a data holder that is used by Authenticator.
Proxy This class represents a proxy setting, typically a type (http, socks) and a socket address.
ProxySelector Selects the proxy server to use, if any, when connecting to the network resource referenced by a URL.
ResponseCache Represents implementations of URLConnection caches.
SecureCacheResponse Represents a cache response originally retrieved through secure means, such as TLS.
ServerSocket This class implements server sockets.
Socket This class implements client sockets (also called just "sockets").
SocketAddress This class represents a Socket Address with no protocol attachment.
SocketImpl The abstract class SocketImpl is a common superclass of all classes that actually implement sockets.
SocketPermission This class represents access to a network via sockets.
URI Represents a Uniform Resource Identifier (URI) reference.
URL Class URL represents a Uniform Resource Locator, a pointer to a "resource" on the World Wide Web.
URLClassLoader This class loader is used to load classes and resources from a search path of URLs referring to both JAR files and directories.
URLConnection The abstract class URLConnection is the superclass of all classes that represent a communications link between the application and a URL.
URLDecoder Utility class for HTML form decoding.
URLEncoder Utility class for HTML form encoding.
URLStreamHandler The abstract class URLStreamHandler is the common superclass for all stream protocol handlers.
 

Enum Summary
Authenticator.RequestorType The type of the entity requesting authentication.
Proxy.Type Represents the proxy type.
 

Exception Summary
BindException Signals that an error occurred while attempting to bind a socket to a local address and port.
ConnectException Signals that an error occurred while attempting to connect a socket to a remote address and port.
HttpRetryException Thrown to indicate that a HTTP request needs to be retried but cannot be retried automatically, due to streaming mode being enabled.
MalformedURLException Thrown to indicate that a malformed URL has occurred.
NoRouteToHostException Signals that an error occurred while attempting to connect a socket to a remote address and port.
PortUnreachableException Signals that an ICMP Port Unreachable message has been received on a connected datagram.
ProtocolException Thrown to indicate that there is an error in the underlying protocol, such as a TCP error.
SocketException Thrown to indicate that there is an error in the underlying protocol, such as a TCP error.
SocketTimeoutException Signals that a timeout has occurred on a socket read or accept.
UnknownHostException Thrown to indicate that the IP address of a host could not be determined.
UnknownServiceException Thrown to indicate that an unknown service exception has occurred.
URISyntaxException Checked exception thrown to indicate that a string could not be parsed as a URI reference.
 

Package java.net Description

Provides the classes for implementing networking applications.

The java.net package can be roughly divided in two sections:

  • A Low Level API, which deals with the following abstractions:

    • Addresses, which are networking identifiers, like IP addresses.

    • Sockets, which are basic bidirectional data communication mechanisms.

    • Interfaces, which describe network interfaces.

  • A High Level API, which deals with the following abstractions:

    • URIs, which represent Universal Resource Identifiers.

    • URLs, which represent Universal Resource Locators.

    • Connections, which represents connections to the resource pointed to by URLs.

Addresses

Addresses are used throughout the java.net APIs as either host identifiers, or socket endpoint identifier.

The InetAddress class is the abstraction representing an IP (Internet Protocol) address, it has two subclasses:

But, in most cases, there is no need to deal directly with the subclasses, as the InetAddress abstraction should cover most of needed functionalities.

About IPv6

Not all systems do have support for the IPv6 protocol, and while the Java networking stack will attempt to detect it and use it transparently when available, it is also possible to disable its use with a system property. In the case where IPv6 is not available, or explicitly disabled, Inet6Address are not valid arguments for most networking operations any more. While methods like java.net.InetAddress.getByName is guaranteed not to return an Inet6Address when looking up host names, it is possible, by passing literals, to create such an object. In which case, most methods, when called with an Inet6Address will throw an Exception.

Sockets

Sockets are means to establish a communication link between machines over the network. The java.net package provides 4 kinds of Sockets:

  • Socket is a TCP client API, and will typically be used to connect (java.net.Socket.connect(SocketAddress)) to a remote host.
  • ServerSocket is a TCP server API, and will typically accept (java.net.ServerSocket.accept) connections from client sockets.
  • DatagramSocket is a UDP endpoint API and is used to send, and receive, java.net.DatagramPackets.
  • MulticastSocket is a subclass of the DatagramSocket used when dealing with multicast groups.

Sending and receiving with TCP sockets is done through InputStreams and OutputStreams which can be obtained via the java.net.Socket.getInputStream and java.net.Socket.getOutputStream methods.

Interfaces

The NetworkInterface class provides APIs to browse and query all the networking interfaces (e.g. ethernet connection or PPP endpoint) of the local machine. It is through that class that you can check if any of the local interfaces is configured to support IPv6.

High level API

A number of classes in the java.net package do provide for a much higher level of abstraction and allow for easy access to resources on the network. The classes are:

  • URI is the class representing a Universal Resource Identifier, as specified in RFC 2396. As the name indicates, this is just an Identifier and doesn't provide directly the means to access the resource.
  • URL is the class representing a Universal Resource Locator, which is both an older concept for URIs and a mean to access the resources.
  • URLConnection is created from a URL and is the communication link used to access the resource pointed by the URL. This abstract class will delegate most of the work to the underlying protocol handlers like http or ftp.
  • HttpURLConnection is a subclass of URLConnection and provides some additional functionalities specific to the HTTP protocol.

The recommended usage is to use URI to identify resources, then convert it into a URL when it is time to access the resource. From that URL, you can either get the URLConnection for fine control, or get directly the InputStream.

Here is an example:

URI uri = new URI("http://java.sun.com/");
URL url = uri.toURL();
InputStream in = url.openStream();

Protocol Handlers

As mentioned, URL and URLConnection rely on protocol handlers which must be present, otherwise an Exception is thrown. This is the major difference with URIs which only identify resources, and therefore don't need to have access to the protocol handler. So, while it is possible to create an URI with any kind of protocol scheme (e.g. myproto://myhost.mydomain/resource/), a similar URL will try to instantiate the handler for the specified protocol, if it doesn't exist an exception will be thrown.

By default the protocol handlers are loaded dynamically from the default location. It is, however, possible to add to the search path by setting the java.protocol.handler.pkgs system property. For instance if it is set to myapp.protocols, then the URL code will try, in the case of http, first to load myapp.protocols.http.Handler, then, if this fails, http.Handler from the default location.

Note the the Handler class has to be a subclass of the abstract class URLStreamHandler.

Since:
JDK1.0

Ces informations proviennent du site de http://java.sun.com

Remarques

Contenu

Le contenu de cette page provient du site de Sun, et est généré depuis un cache sur l'infobrol après certains traitements automatisés. La présentation peut donc différer du document original, mais le contenu aussi. Vous pouvez utiliser ce bouton pour afficher la page originale du site de Sun :

Quels sont les motivations de cette démarche?

Maintenir les pages en cache sur différents sites peut offrir plus de disponibilité.

Chaque page est indexée dans la base de donnée, ce qui permet de retrouver facilement les informations, au moyen des sommaires, du moteur de recherche interne, etc.

Des facilités sont mises en place pour que les membres de l'infobrol puissent effectuer des traductions en français des différents documents. Ceci devrait permettre aux débutants en programmation Java de consulter les API en français s'ils maîtrisent moins bien la langue de Shakespeare. Dans le cas où une traduction a été soumise, elle est disponible au moyen d'un lien en bas de page. Si la traduction a été validée, la page s'affiche par défaut en français, et un lien en bas de page permet d'atteindre la version en anglais.

Le code sur l'infobrol est automatiquement coloré selon la syntaxe, et les différents mots clés sont transformés en liens pour accéder rapidement aux informations.

Vous avez la possibilité de partager vos expériences en proposant vos propres extraits de code en utilisant le bouton "ajouter un commentaire" en bas de page. Si vous visitez simplement l'infobrol, vous avez déjà accès à cette fonction, mais si vous étes membre du brol, vous pouvez en plus utiliser des boutons supplémentaires de mise en forme, dont la coloration automatique de vos extraits de codes.

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

8 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-503
Document créé le 13/07/06 03:12, dernière modification le Vendredi 17 Juin 2011, 12:12
Source du document imprimé : http://www.gaudry.be/java-api-rf-java/net/package-summary.html Document affiché 1 fois ce mois de Juin.
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
15832 documents
452 astuces.
549 niouzes.
3099 definitions.
447 membres.
8115 messages.

Document genere en :
0,36 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Un jour, Chuck Norris a perdu son alliance. Depuis c'est le bordel dans les terres du milieu...

Anonyme [Chuck Norris fact]
 
l'infobrol
Nous sommes le Vendredi 01 Juin 2012, 17:38, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)