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

Développement Web en Java Discussion :

Nouveau projet : Quelle orientation prendre ?


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 19
    Par défaut Nouveau projet : Quelle orientation prendre ?
    Bonjour à tous,

    J'ai un peu farfouillé Google et la FAQ mais je ne dois pas trouver les bon mots clefs pour trouver ce que je cherche... pourtant je suis sur a 200% que ma question d'autre se la sont déjà posée ...

    Je me pose la question sur comment structurer un projet que je souhaite attaquer.

    Grosso modo je souhaite faire une sorte de "Planning" en mode collaboratif.
    Plus précisément j'imagine ça avec une petite application client ( un interface graphique assez simple somme toute...) qui ferait ses petites requêtes SQL sur une base MySQL.
    Jusque là aucun soucis, mais je me pose une sacrée question qui pourrait remettre ma vision des choses en cause...

    Comment "actualiser" ou "notifier" l'application client lorsqu'un utilisateur modifie une donnée dans la table SQL par l'intermédiaire de son interface ?
    Je veux dire par la que 2 personnes différentes lance l'application qu'ils ont donc en local sur leur machine, qui affiche les données de la base SQL commune, si l'un modifie une valeur, comment "fire" une mise à jour chez l'autre ( ou les autres...)

    Laisser un tourner un Thread en boucle qui rafraichirait toutes X secondes ?... Ça me parait lourd et plutôt pas très optimisé comme solution ...

    Qu'en dites vous ?

    J'aimerais si possible ne pas m'orienter vers un système d'application client<->serveur car je ne maitrise pas encore ce domaine .... la conversation entre le client et le serveur ...

    Voilà j'espère avoir énoncé assez clairement mon interrogation

    J'attends donc vos suggestions, opinions ...

    Chris

  2. #2
    Membre Expert Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Par défaut
    Salut,

    Non en effet la solution du Thread qui tourne en boucle est à proscrire.

    Je ne sais pas si ma solution est la meilleure, mais nous on se base sur un "Timestamp" (ou indicateur de changement).

    En gros, dans une interface il y a tout un tas d'actions possibles qui peuvent déclencher un rafraichissement ou une revalidation des données (changer d'onglet, cliquer sur un champs, appuyer sur un bouton, donner le focus à un élément...). Mais au lieux de recharger bêtement les données à chaque fois, on va d'abords regarder si il y eu des modifications dans la base. Et cette information est obtenue grâce au Timestamp.

    Un Timestamp est simplement une donnée (un entier, une date..) que l'on rajoute dans la structure d'une table et qui est contrôlé par un trigger pour être incrémenté UNIQUEMENT lorsqu'une transaction a été effectuée. Comme ça, quand la vue Java va récupérer une première fois les données, elle récupère aussi ce Timestamp. Si le Timestamp à changé, c'est que les données aussi donc il faut recharger. Si non, alors on peut travailler sur les données chargées en mémoire.

    Je sais qu'il existe des solutions qui permettent de notifier directement du code Java lors d'évènement en base, mais je ne l'ai jamais fait donc je ne peux pas vraiment en dire plus. Après à moins de vouloir faire un programme où la visualisation des informations en temps réel est primordiale, je n'en vois pas trop l’intérêt honnêtement.

    Cdt.

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 19
    Par défaut
    Bonjour Nico2,

    Merci pour la suggestion, effectivement le Timestamp qui serait mis à jour à chaque modif effective sur la ou les tables est une idée assez sympa et facile à mettre en œuvre. JE vais donc me renseigner sur comment mettre ça en place sur une table car je ne savais pas que l'on pouvait le faire

    Dans mon cas effectivement la visualisation en temps réel est primordiale.

    Si quelqu'un d'autre connait ou a des informations à propos de solutions qui permettent de notifier directement du code Java lors d'évènement en base je suis tout open car à lire ça me parait sacrément adapté à la situation

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Par défaut
    L'architecture client serveur est quand même plus adaptée. Et très généralement c'est relativement facile à mettre en place (beaucoup d'exemples sur le net).

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 19
    Par défaut
    J'avais un peu peur de ce genre de réponse ... mais en même temps ça ma fait super super envie d'apprendre a maitriser un application client-serveur ...

    Pour où commencer ? ... des tuto ? des exemples ? Comment acquérir les vraies bonnes bases pour se lancer là dedans ?

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Par défaut
    Citation Envoyé par whitelegend Voir le message
    J'avais un peu peur de ce genre de réponse ... mais en même temps ça ma fait super super envie d'apprendre a maitriser un application client-serveur ...

    Pour où commencer ? ... des tuto ? des exemples ? Comment acquérir les vraies bonnes bases pour se lancer là dedans ?
    Commencer par lire un tuto, puis télécharger le code source d'une application client-serveur et essayer d'en comprendre les mécanismes. Pour ma part j'avais récupérer une application utilisant l'architecture client serveur (c'était en dotnet, mais le principe est le même) et j'ai essayer d'isoler seulement les fonctions qui m'intéressaient (envoie et réception de messages). Faire l'effort de récupérer que ce dont on à besoin te permet d'identifier le rôle des fonctions et au passage de voir comment les utiliser.

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

Discussions similaires

  1. Quels document pour quelles étapes lors d'un projet web orienté UX
    Par laurent94 dans le forum Gestion de projet
    Réponses: 0
    Dernier message: 26/08/2012, 16h52
  2. Réponses: 7
    Dernier message: 11/01/2011, 18h53
  3. un nouveau site communautaire orienté projets
    Par arkadih dans le forum Actualités
    Réponses: 0
    Dernier message: 16/02/2010, 15h31
  4. Nouveau projet : quelles technos conviendraient le mieux
    Par pinpin_lelapin dans le forum Frameworks Web
    Réponses: 5
    Dernier message: 28/05/2009, 09h11
  5. Créer un nouveau projet JEE, quelles technos choisir ?
    Par kroax dans le forum Frameworks Web
    Réponses: 5
    Dernier message: 22/05/2007, 09h05

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