Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SERVEUR TCP/IP SOUS JAVA


Information sur la source

Catégorie :Reseaux et Internet Classé sous : serveur, client, internet, tcp, ip Niveau : Débutant Date de création : 10/12/2007 Date de mise à jour : 03/02/2008 23:09:01 Vu / téléchargé: 8 452 / 1 076

Note :
Aucune note

Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

Description

Bon, alors c'est assez simple, j'avais besoin de faire communiquer deux PC entre eux alors je me suis inspiré des exemples de Sun pour vous livrer ce serveur TCP/IP clés en main. Il utilise le port 10000 pour le serveur, permet de recevoir et traiter toutes les informations reçues en asynchrone, donc pas de problème de clients multiples (serveur multithreadé) et permet d'envoyer des messages vers d'autre serveurs du même type avec une IP, (j'ai pas testé les URL), le port de destination étant évidemment le port 10000. On peut choisir d'envoyer un seul message et traiter les données du serveur ou établir un dialogue avec les serveur. ET chose que j'aime bien on peut l'arrêter quand on veut! Donc pas d'occupation des ports et du proc intempestive!
Par contre il a un défaut, il ne gère pas les proxys. Je l'aurait bien fait mais j'ai pas trop le temps et en plus je ne pourrait pas le tester, donc si quelqu'un qui s'y connait en java peut modifier ma source pour régler ce problème ce sera super. Et s'il peut me l'envoyer par mail: ingenieur.toulousain@hotmail.fr
Un petit détail, comme on m'a posé cette question un certain nombre de fois: en fait il n'y a pas de main dans ce serveur, il y a une classe Communication qui lance le serveur. Après c'est à vous de l'insérer dans votre programme. L'idée du serveur est de fournir la trame technique pour communiquer en réseau et après c'est à vous de définir les protocoles comme vous le voulez. Donc inutile de chercher un main ou de lancer le serveur sans avoir rempli les classes de protocole! Il marchera quand même mais il s'arrêtera et ne fera rien.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

10 décembre 2007 00:33:46 :
Je reviens de la prévisualisation, il doit y avoir un bug, je ne modifie pas la source, je l'ajoute....
10 décembre 2007 00:35:05 :
idem précédent
10 décembre 2007 00:40:12 :
Il y avait une erreur dans la classe communication, il manquait l'argument pour le dialogue.
10 décembre 2007 00:42:37 :
idem début, toujours le même bug,désolé pour les multiples MAJ
15 décembre 2007 00:44:41 :
Sur cette version le client envoi la requète en prmier, sur la précédente c'était le serveur.
03 février 2008 23:07:49 :
Explication supplémentaire sur le code et l'abscence de main
03 février 2008 23:09:01 :
Explication supplémentaire sur le code et l'abscence de main

Commentaires et avis

signaler à un administrateur
Commentaire de miss fafa le 14/12/2007 23:58:48

slt tt le monde,
beh chui aussi debutante en java surtout ,des choses de reseau programme en java, beh j'ai telecharger le zip mé j'ai pas reussi de les lire ,mm que j'ai jcreator ds mon pc:s,repond moi j'ai besoin de quel logiciel pour lire ce programme

signaler à un administrateur
Commentaire de MrEske le 15/12/2007 00:42:40

Pour le lire il faut Eclipse, c'est gratuit et pratique.
Un lien pour le télécharger:
http://www.eclipse.org/downloads/
Le classic suffit normalement, sinon prends le JEE, il est complet. J'ai pris le JEE d'office je crois.

Voilà, sinon j'ai un peu réfléchi, sur le code, pour faire dialoguer le client et le serveur, tu peux utiliser le protocole client et dire "pour tel input envoie ça avec la méthode envoi de la classe communication". C'est un peu pareil mais tu crées un client à chaque envoi au lieu de réutiliser le même, c'est plus lent mais tu peux trouver ça plus simple...à voir.

J'ai aussi mis une mise à jour histoire que ce soit le client qui envoie en premier la requète, dans la version précédente c'était le serveur qui parlait en premier.

Voilà, bonne soirée!

signaler à un administrateur
Commentaire de arthas77 le 04/03/2008 17:44:00

est du rmi?

signaler à un administrateur
Commentaire de arthas77 le 04/03/2008 17:44:51

est ce que c'est du rmi?

signaler à un administrateur
Commentaire de MrEske le 04/03/2008 19:58:13

d'après le lien sur la page:

RMI permet l'invocation de méthodes entre des objets Java
qui s'exécutent dans des machines virtuelles distinctes
(espaces d'adressage distincts) sur le même ordinateur ou sur
des ordinateurs distants reliés par un réseau

En espérant que ça serve.

Note: en suivant le lien tu trouve tout de suite la réponse à ta question...

signaler à un administrateur
Commentaire de arthas77 le 05/03/2008 15:02:42

merci pour ta réponse mais tu n'as pas répondu à ma question (j'avoue qu'elle n'était pas claire) qui te demandait si le code source du serveur présenté ci dessus était écrit en java rmi ou en simple javaSE. Merci

signaler à un administrateur
Commentaire de MrEske le 05/03/2008 19:55:41

Mon code est du javaSE normal. Je ne me suis pas encore penché sur le rmi.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

TCP/IP entre JAVA et C [ par KC62 ] Bonjour a tous, Je développe en binome un petit tchat (Serveur en C et client en JAVA) Le serveur marche correctement avec un client en C (r&#2 Deux pour le prix d'une... [ par AbriBus ] Salut a tous...Vous sauriez pas si je peux recuperer l'adresse IP d'un client qui se connecte a un serveur par une applet... j'ai bien penser le faire Serveur/client TCP un peu special [ par cinya ] Hello tout le monde!!Voila j'aimerai creer en java un client/serveur TCP ou la connexion du serveur n'est pas une connection entrante. C'est a dire qu tcp, communication client/serveur [ par brightblade ] Voila, je veux echanger des donnees (byte, par exemple un fichier fragmenté) entre un client et un serveur. par contre j'ai besoin d'etre sur que mes [RMI]ip du registry [ par Frouf85 ] Bonjour,je dispose d'une application client et d'un application serveur qui communique via RMI.Je souhaite faire communiquer ces deux applications via Communication TCP [ par DiGhan ] Bonjour,je dois réaliser une application basée sur une architecture client / serveur. Celle-ci s'appuie sur TCP pour communiquer. Mon serveur écrit en [JavaRMI] connexion client/serveur par Internet [ par thespartan ] Voici j'ai un Serveur qui tourne sur ma machine, les clients sont sur une autre machine, il sont censés se connecter au serveur. Quand les clients et Savoir l'IP réel [ par stallman ] Je développe un client de messagerie basé sur l'architechture client/serveur avec les java sockets, j'ai résolue le probleme de connection client =&gt Envoi fichier [ par sekka ] Bonjour,J'ai crée une application serveur qui permet d'envoyer un fichier  à un client2.Cet cette fichier est envoyé par un autre client1 vers le serv webcache [ par angelike25 ] Bonjour,Je suis débutante en java et je doit effectuer une connexion client/serveur avec la gestion d'un cache.J'ai déjà réussie à faire communiqué le


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.