Dev des app rep
SERIE N°3
Exercice 1 :
Écrivez une classe qui démarre deux threads. Le premier thread doit afficher dix fois
"Bonjour !" en laissant passer une second entre chaque affichage. Le deuxième thread doit
afficher cinq fois "Salut !", en lassant passer deux secondes entre chaque affichage.
Exercice 2 :
Ecrire le code java d’une application Client/Serveur TCP. Le serveur écoute sur le port 5000,
et attend en boucle qu'un client se connecte. Dans ce cas le serveur délègue un thread pour
s’occuper de chaque client.
Il envoie la chaîne « C’est quoi votre nom ? »
Lorsque le client reçoit cette chaîne, il fait la saisie de son nom par le clavier et l’envoie au
serveur. Ce dernier répond au client par l’envoie du message "Enchanté"+nom Puis le serveur
ferme la connexion.
Remarque : l’adresse IP du serveur est donné comme paramètre de l’application.
Exemple d’exécution :
Java Serveur
Java Client Java Client
C’est quoi votre nom ? C’est quoi votre nom ?
ali sami
Enchanté ali Enchanté sami
Indication 1
Utilisez les threads
Indication 2
L’application doit être formée des classes suivantes :
o La classe Serveur comportant essentiellement les tâches suivantes :
Acceptation de la connexion avec le client sur le port 5000.
Création du thread
Envoie du message « C’est quoi votre nom ?»
Se bloquer en attente du nom du client
Envoie du message «Enchanté»+nom
Fermeture de la connexion avec le client
o La classe Client comportant essentiellement les tâches suivantes :
Ouverture de la connexion avec le serveur dont son adresse est
192.168.0.1(le port d’écoute au niveau serveur est fixé à 5000).
Réception du message provenant du serveur
Saisie du nom par le clavier
Envoie du nom au serveur
Réception et affichage du message provenant du serveur.
Fermeture de la connexion.
Indication 3
Les constructeurs de la classe PrintWriter :
o public PrintWriter (Writer out)
o public PrintWriter (Writer out, boolean autoFlush)
Parmi les constructeurs de la classe Socket :
o public Socket()
o public Socket(InetAddress address, int port) throws IOExceptionInputStream
Parmi les constructeurs de la classe ServerSocket:
o public ServerSocket() throws IOException
o public ServerSocket(int port) throws IOException