Socketsenmodenonconnecté
Deuxclasses
DatagramSocket :unseultypedesocket
DatagramPacket
:format de message pour UDP
DatagramPacket
:
format
de
message
pour
UDP
Conversionentredonnéesetpaquets(dansles2sens)
LesDatagramPacket sontconstruitsdifféremmentpourl’envoietla
réce
p
tion
p
packet = new DatagramPacket(data, data.length, adresseIP, port)
Données à envoyer
(byte []) Données à recevoir
(byte [])
DatagramPacket
data datapacket
packet = new DatagramPacket(data, data.length)
Classe java net DatagramSocket
Classe
java
.
net
.
DatagramSocket
Cette classe permet d
'
envoyer et de recevoir des paquets
Cette
classe
permet
denvoyer
et
de
recevoir
des
paquets
(UDP)
Constructeurs
DatagramSocket()
DatagramSocket(int port)
Construitunesocketdata
g
rammeens
p
écifiantéventuellementun
g p
portsurlamachinelocale(pardéfaut,unportdisponible
quelconqueestchoisi)
Levéeéventuellede
S
ocketExce
p
tion
p
Classe java net DatagramSocket
Classe
java
.
net
.
DatagramSocket
Emission
void send(DatagramPacket p)
IOE ti
ev
e
ven
ue
e
e
IOE
xcep
ti
on
ception
void receive
(
Data
g
ramPacket
p)
(g p)
Cesopérationspermettentd'envoyeretderecevoir
unpaquet
Un paquet est un objet de la classe
Un
paquet
est
un
objet
de
la
classe
java.net.DatagramPacket quipossèdeunezonede
donnéeset(éventuellement)uneadresseIPetunnuméro
de port (destinataire
dans le cas
send
émetteur dans le cas
de
port
(destinataire
dans
le
cas
send
,
émetteur
dans
le
cas
receive)
Classe java net DatagramSocket
Classe
java
.
net
.
DatagramSocket
void
close()
:fermeture de la socket ;penser àtoujours fermer les
void
close()
:
fermeture
de
la
socket
;
penser
à
toujours
fermer
les
socketsquinesontplusutilisées
int getLocalPort() :retourneleportsurlequelonécoute,oule
p
ortanon
y
mesurle
q
uelonaenvo
y
éle
p
a
q
uet
p y q y pq
Ilest possiblede«connecter»une socketdatagramme àundestinataire
void connect(InetAddress ia, int p)
Dans
ce
cas
les
paquets
émis
sur
la socket
seront
toujours
pour
l
'
adresse
Dans
ce
cas
,
les
paquets
émis
sur
la
socket
seront
toujours
pour
l adresse
spécifiée
Laconnexion simplifie l'envoi d'une série depaquets (il n'est plusnécessaire de
spécifier l'adresse dedestinationpourchacun d'entre eux)etaccélère les
contrôles desécurité (ils ont lieuune fois pourtoute àlaconnexion)
La«déconnexion »avecvoid disConnect() défait l'association (lasocket
redevient disponible comme dans l'état initial)
I tAdd
tI tAdd
()
tl’ d àlll t
I
ne
tAdd
ress
g
e
tI
ne
tAdd
ress
()
:re
t
ourne
l’
a
d
resse
à
l
aque
ll
eones
t
connecté
int getPort() :retourneleportauquelonestconnecté
Classe java net DatagramPacket
Classe
java
.
net
.
DatagramPacket
• Emission
DatagramPacket (byte[] buf, int length,
InetAddress ia, int port)
construit un datagramme destiné àêtre envoà l
adresse
construit
un
datagramme
destiné
à
être
envoyé
à
l adresse
ia,surleportport
letamponbuf delongueurlength contientlesoctetsà
envo
y
er
y
ception
DatagramPacket (byte[] buf, int length)
construit un datagramme destiné àrecevoir des données
construit
un
datagramme
destiné
à
recevoir
des
données
letamponbuf delongueurlength contientlesoctetsà
recevoir
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !