La classe CustomerHostServer étend la classe ServerSocket de Java, ce qui fait de la classe CustomerHostServer elle-même un serveur sockets. Le fait d'étendre la classe ServerSocket facilite considérablement le coding de l'application serveur. Dans la méthode main de la classe CustomerHostServer, un nouvel objet CustomerHostServer est instancié, à l'écoute du
Se connecter, côté serveur
port 8500.
server = new CustomerHostServer(8500);
Ensuite, nous commençons une boucle while sans fin, à l’intérieur de laquelle
l’objet serveur nouvellement créé est défini pour attendre les connexions client
en appelant la méthode accept :
while(true) {
CustomerHostSocket socket =
(CustomerHostSocket)server.accept();
socket.start();
}
Le nombre de threads supportés par le système d’exploitation détermine
la limite globale des connexions client dans cette application
Le résultat d’une connexion client réussie est un objet du type CustomerHostSocket
renvoyé par la méthode accept. Les communications sockets se font au travers de
cet objet, qui est une sous-classe de la classe Socket de Java. Dès qu’un client
contacte le serveur, l’objet CustomerHostSocket est démarré. La classe CustomerHostSocket
est multithread, de sorte que la prochaine itération de la boucle while puisse
se dérouler immédiatement et que le serveur puisse reprendre l’attente sur la
méthode accept pour un autre client. Si 100 clients se connectent au serveur,
100 objets CustomerHostSocket sont créés et démarrés, chacun s’exécutant dans
son propre thread.
Il faut savoir que le nombre de threads supportés par le système d’exploitation
détermine la limite globale des connexions client dans cette application. Un seul
job AS/400, comme notre serveur sockets, peut contenir des dizaines de milliers
de threads séparés.
Pour que la méthode accept renvoie une instance de la classe socket personnalisée
CustomerHostSocket, la classe CustomerHostServer doit remplacer la méthode accept
de la classe ServerSocket de la base. Les détails de la méthode accept remplacée
sont fondamentaux dans ce modèle, qui étend les ServerSocket et Socket de Java.
Voici le code complet de la méthode accept remplacée :
PUBLIC Socket accept() throws IOException {
CustomerHostSocket s =
new CustomerHostSocket();
implAccept(s);
return s;
}
La méthode accept remplacée contient du code pour instancier un nouveau CustomerHostSocket.
Il ne faut pas être troublé par l’appel de la méthode implAccept. L’architecture
du support socket de Java offre la méthode implAccept comme moyen facile d’exécuter
le mécanisme binding socket de la mise en oeuvre de la plate-forme. La méthode
implAccept admet comme paramètre une instance de la classe Socket. Rappelons que
la méthode accept se bloque normalement jusqu’à ce qu’une connexion client soit
faite. Quand on passe à la méthode implAccept une instance de la classe Socket
ou, comme dans ce cas une sous-classe de la classe Socket, la méthode implAccept
est l’endroit où le serveur attend une connexion client. Quand la méthode implAccept
renvoie l’objet socket que l’on a passé, une connexion avec un client est établie
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- IA et cybersécurité : les entreprises françaises acceptent plus de risques qu’elles ne savent les contrôler
- Infrastructures critiques : la France redoute les attaques dopées à l’IA, mais peine à unifier sa sécurité IT/OT
- Les Assises 2026 : encore plus d’énergie pour poursuivre le chemin
- Agents IA : arrêtons de leur confier nos secrets
Articles les + lus
Continuer avec Exchange Server : quelles conséquences ?
Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
À la une de la chaîne Tech
- Continuer avec Exchange Server : quelles conséquences ?
- Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
