IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

[Débutant] Les Sockets, petite question


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 106
    Points : 78
    Points
    78
    Par défaut [Débutant] Les Sockets, petite question
    Bonjour,

    Suivant avec coeur et conviction le tuto de Julien DEFAUT.

    ma logique est-elle bonne?
    Je me connecte au serveur via le serverSocket avec mon socket client.
    Le serveur lui détecte que je me connecte. Et donc, si je comprends bien, il créait un Thread client "BlablaThread".
    le serverSocket est destiné qu'a créé des BlablaThread quand on se connecte sur le socker serveur. Comment fait ton pour récupérer le flux pour lui balancer des messages ?

    le truc qui me bloque: si je comprends bien dans le code de "BlablaThread" il y a deux flux pour BlablaThread le flux "in" et le flux "out".

    Comment récupérer ses deux flux depuis le Client?
    pour qu'ensuite je puisse directement envoyer sur le flux "in", et que je puisse recevoir sur le "out".


    Je débute, alors j'ai pas forcément l'arhictecture bien ordonnée dans ma tete.

    Si quelqu'un à une piste. Merci d'avance.

    Cécilia

  2. #2
    Membre actif Avatar de hydraland
    Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Points : 239
    Points
    239
    Par défaut
    Salut,

    Je croit que tu n'as pas bien compris le fonctionnement des sockets.
    Soit A un client et B un serveur. Quand A se connecte à B, A a un flux inC(client.getInputStream()) et un flux outC(client.getOutputStream()). Du coté de B tu as aussi deux flux inS(serveur.getInputStream()) et outS (serveur.getOutputStream()). A envoi au serveur des données en utilisant son flux outC, le serveur reçoit les données sur le flux inS. B envoi au client des données en utilisant son flux outS, le client reçoit les données sur le flux inC.

    A+
    Hydraland

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 106
    Points : 78
    Points
    78
    Par défaut
    le serveur reçoit les données sur le flux inS
    quand tu dis qu'il recoit le flux inS, c'est le flux entrant du serveur spécifique avec ce client ?

    Si je lance 3 sockets client sur le socket serveur, le serveur aura donc 3 inS, 1 spécifique à chaque client?

    Merci, j'ai déjà progressé dans la manière de se représenter le concept.

  4. #4
    Membre expert
    Avatar de Janitrix
    Inscrit en
    Octobre 2005
    Messages
    3 391
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 3 391
    Points : 3 401
    Points
    3 401
    Par défaut
    Si je lance 3 sockets client sur le socket serveur, le serveur aura donc 3 inS, 1 spécifique à chaque client?
    Si ton serveur gère le multi-thread, oui. En fait, il faut voir la chose telle que : pour chaque connexion, le serveur et le client disposent de 2 streams : 1 InputStream pour la lecture des données, et 1 OutputStream pour l'écriture de données. Ton client utilise l'input stream pour lire ce que le serveur dit, puis lui répond en écrivant dans son output stream. Le serveur lit ce que le client dit grâce à son InputStream, et lui répond avec son OutputStream. Il n'y a rien de compliquer, inputstream servira toujours à la lecture, et outputstream à l'écriture.

    Si tu veux une manière de voir les choses plus imagée, tu peux dire que l'input stream sert à écouter ce que dit l'autre, et l'outputstream sert à parler.

    La logique des communications réseaux est assez abstraite pour dérouter les débutants, alors je ne peux te conseiller que deux choses : de la patience, et un esprit clair. Il faut arriver à te représenter comment tout cela fonctionne, alors rien de tel qu'un stylo et une feuille de papier. Mets tout ça au clair dans ton esprit.

    Le problème que tu as là ne semble pas spécifique à Java, c'est tout simplement que tu n'arrives pas à comprendre comment ça se passe.

    Relis le tutoriel plusieurs fois, en faisant des dessins, puis ça viendra avec le temps.

    Bonne chance, et si tu as d'autres problèmes, que c'est encore flou, n'hésites pas

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 106
    Points : 78
    Points
    78
    Par défaut
    Merci bien, je travaille ça au calme. Je vous tiens au courant bonne ou mauvaise.

    Bonne journée.

    Amicalement, cécilia.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Petite question sur les sockets
    Par theawe dans le forum Réseau
    Réponses: 6
    Dernier message: 30/06/2009, 12h34
  2. Débutant avec les hooks : une petite question
    Par Moumouu dans le forum Windows
    Réponses: 1
    Dernier message: 19/02/2009, 10h09
  3. Petite question de débutant sur les lumières
    Par Clad3 dans le forum OpenGL
    Réponses: 12
    Dernier message: 05/11/2007, 23h22
  4. Encore une petite question sur les sockets...
    Par damien99 dans le forum MFC
    Réponses: 4
    Dernier message: 15/02/2006, 15h22
  5. Petite question sur les performances de Postgres ...
    Par cb44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 13/01/2004, 14h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo