|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Clément Webmaster Inscription : juillet 2012 Messages : 4 ![]() |
Bonjour à tous,
Je suis actuellement en train de développer un Tchat où tous les messages seront cryptés, j'ai fais une interface graphique à l'aide de SWT, le système d'authentification etc etc... J'ai fais le choix d'utiliser une base de données MySQL et de communiquer avec à l'aide de L'API JDBC. Tout fonctionne parfaitement jusque maintenant. Je suis en train de faire l'affichage des membres en ligne, je reste classique, une barre sur le coté avec tout les pseudos des personnes connectées. ![]() Cela marche parfaitement, je lis la table contenant les membres connectés et je les affiche dans un List avec list.add(String); Mais voilà mon problème, j'aimerai que cette liste de membres en ligne s'actualise au cours du temps, si quelqu'un se connecte, que ça l'affiche immédiatement... (J'en aurai également besoin pour les messages d'ailleurs ! ) J'ai pensé à lire en permanence la BDD avec un while(true) dans un Thread Mais ça plante le programme... Peut être m'y suis-je mal pris aussi... Auriez vous des indications qui me permettraient d'avancer... Des techniques particulières ? Merci d'avance pour votre aide Cordialement MrGlobox Voici le code de Tchat.java: Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Marc Développeur Java Inscription : mai 2007 Messages : 1 564 ![]() |
Salut,
Déjà, des requêtes BDD dans un client, ça me paraît louche T'as bien prévu une architecture client / serveur non? Parce que là, c'est le serveur qui va prévenir les clients qu'il ya une nouvelle connexion. C'est pas le client qui demande tout le temps au serveur... Quelques infos sur ton architecture ne serait pas de trop Voilà, à+ Gueritarish
__________________
Pas de questions technique par MP, les forums sont là pour ça. Le 5 et 6 juin à Toulouse, la première EclipseCon France ! |
|
|
10
|
|
|
#3 |
|
Invité de passage
![]() Clément Webmaster Inscription : juillet 2012 Messages : 4 ![]() |
Bonsoir,
Tout d'abord merci de ta réponse Je n'ai aucun soucis sur la connexion à la base de données coté client, c'est une application à usage privé (avec des amis), et j'aurai aimé éviter l'utilisation d'application serveur, même si c'est ce que je vais faire si jamais je ne trouve pas de solution... Amicalement MrGlobox |
|
|
00
|
|
|
#4 |
![]() ![]() Marc Développeur Java Inscription : mai 2007 Messages : 1 564 ![]() |
Salut,
Alors quand je parle archi client / server, le server peut être tout à fait anodin et se résumer à un démon qui écouterait une socket... Tout simplement. Et ça me paraît plus "équilibré" aussi de lui confier, à lui seul, les interactions avec la BD. Mais ce n'est que mon avis hein En plus, ça te faciliterait la gestion de ton application. Après, rien ne t'empêche de garder ton application dans l'état courant et de faire un démon qui s'occuperait d'envoyer des requêtes "régulièrement" à la BD pour connaître ceux qui sont connectés. Un démon est un Thread qui tourne "indéfiniment". Il s'agit ensuite de communication entre Thread. Du moins, entre le thread IHM et ton démon pour les mises à jour IHM à effectuer. Il te faut, bien entendu, lancer ce démon en dehors du thread IHM. Voilà, à+ Gueritarish
__________________
Pas de questions technique par MP, les forums sont là pour ça. Le 5 et 6 juin à Toulouse, la première EclipseCon France ! |
|
|
10
|
|
|
#5 |
|
Invité régulier
![]() Ingénieur en apprentissage Inscription : août 2012 Messages : 12 ![]() |
Bonjour,
Dans le cadre d'un projet j'avais utilisé la bibliothèque java Kryonet. http://code.google.com/p/kryonet/ Je me rappelle qu'un des snippets était un chat qui se rapproche fortement de ce que tu décris. |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Marouan El khebirIngénieur développement logiciels Inscription : décembre 2012 Messages : 2 ![]() |
Bonjour,
Si tu es entrain de développé ton application chat en IHM, le mieux c'est de passer par les sockets (client/serveur). et il faut mettre en place un protocole de communication. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com