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

Java Discussion :

[Conception][Stockage]Contacts de messagerie


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut [Conception][Stockage]Contacts de messagerie
    Bonjour,

    Je suis en train de developper une application de messagerie pour envoyer et recevoir des mails, et maintenant, j'aimerais ajouter la possibilité d'avoir une liste de contacts. Donc de pouvoir créer, supprimer, modifier des contacts, et j'aimerais aussi pouvoir ajouter des groupes.

    Mais je ne sais pas quel choix adopter pour "stocker" ces contacts. En sachant que je compte pouvoir employer cette application depuis plusieurs endroits ensuite. Et j'aimerais une solution gratuite

    Quelle serait selon-vous, la meilleure méthode de faire ?

    J'ai déja quelques idées de possibilités:
    • Bases de données mysql
    • Simples fichiers textes
    • Fichiers properties

    Je suis bien sur ouvert à toute autre possiblité.

    Mais je ne sais pas trop ce qui serais le plus adapté.

    Merci d'avance

  2. #2
    Membre éprouvé Avatar de Satch
    Homme Profil pro
    Hypnothérapeute - Magicien
    Inscrit en
    Mars 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Hypnothérapeute - Magicien

    Informations forums :
    Inscription : Mars 2004
    Messages : 498
    Par défaut
    Si tu ne voulais mettre que des contacts, un fichier texte suffirait.

    Mais là tu veux aussi avoir la possibilité de faire des groupes. Ca devient plus compliqué avec un fichier texte. J'opterai pour la base de donnée, ça sera plus rapide et plus intuitif de récupérer les membres d'un groupe. Idem pour l'ajout-suppression-modification.

    Sinon je me demande si un xml ne ferait pas l'affaire pour une structure simple comme celle là.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Salut,
    A priori la solutions la plus flexible est la base de données, tu pourras toujours rajouter des clé etrangere afin d'associé d'autres tables alors que dans le cas des fichiers properties ou plat l'association sera bcp plus difficle a mettre en place , sinon tu a la solution du fichier XML qui est egaelement flexible .

    Je dirais que le choix devrait se faire suivant la volumétrie , plus elle seras grosse plus la base de données s'imposeras sinon un fichier XML devrait suffir ce qui te permet d'eviter d'installer une base de données .

  4. #4
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    J'avais pas trop pensé au fichier Xml, mais maintenant que vous le dites, c'est vrai que ca me semble tres bien.

    Non, la base de données ne sera pas tres grande, donc je pense que ca suffira la solution du xml

    Maintenant, pour la structure, que me conseilleriez-vous ? Un seul fichier ? Un fichier par Groupe ? Un fichier pour les groupes et un fichier pour les contacts ?

    Est ce qu'il y a des Api Xml pour java ?

    Merci bien

    P.S. Si quelqu'un a encore une autre solution, je suis toujours ouvert à autre chose

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Il y a deux spec pour manipuler du XML => DOM et SAX , dom est peut etre un peu plus simple mais pour les gros fichier xml est deconseillé. Dans ton cas tu peux a priori te servir de DOM , et apparement JDom est une lib simple d'utilisation

    http://cynober.developpez.com/tutoriel/java/xml/jdom/

    pour le format a priori un seul fichier du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <contacts>
           <groupe name="amis">
                   <contact>
                      <nom> Dupont</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
          </groupe>
    </contacts>
    mais bon tu as plein de solution possible , de plus je ne connais pas tout ce que tu veux faire , la je suis parti du principe que l'on a 1 fichiers par utilisateur de l'appli .

  6. #6
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    En fait pour chaque contacts, je pensais juste à mettre son pseudo, son nom, son prénom et son email

    et je pensais faire un seul user ouais ou alors plusieurs mais ca je verrai ensuite

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    En fait tu pourrais avoir plusieur fichier par user tu aurais un michelBertrant.xml un dupontAlexandre.xml etc , ou alors 1 seul fichier pour tout le monde et la faut rajouter une balise User

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    <contacts>
         <user name="Michel Blanc">
           <groupe name="amis">
                   <contact>
                      <nom> Dupont</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
          </groupe>
           <groupe name="Boulot">
                   <contact>
                      <nom> Germaine</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
                  <contact>
                      <nom>Luc</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
          </groupe>
     
        </user>
         <user name="Casanova">
           <groupe name="charmante">
                   <contact>
                      <nom> Monica</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
                   <contact>
                      <nom> Laura</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
          </groupe>
           <groupe name="Ex">
                   <contact>
                      <nom> Germaine</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
                  <contact>
                      <nom>Vanessa</nom>
                       <mail> truc@truc.com </mail>
                    </contact>
          </groupe>
     
        </user>
    </contacts>
    je suis pas sur d'etre tres clair !!

  8. #8
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    autant je trouvais logique ta premiere version autant je trouve bizarre la deuxième

    pourquoi tu mets des groupes à l'intérieur des users, je verrais plutot le contraire ???

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Citation Envoyé par wichtounet
    autant je trouvais logique ta premiere version autant je trouve bizarre la deuxième

    pourquoi tu mets des groupes à l'intérieur des users, je verrais plutot le contraire ???

    En fait dans la deuxieme solution tu n'a qu'un fichier pour tout les utilisateur ou 'user' il faut donc pouvoir retrouver les groupe pour un utilisateur en particulier , pour cela je suis obligé de rajouter cette balise sinon tu aurais les contact et les groupe de tout les gens utilisant ton appli melanger dans un fichier sans pouvoir retrouver a qui ils appartenaient !!

    Dans mon exemple en l'occurrence tu peux facilement retrouver les groupes et donc les contact de Michel Blanc et Casanova!

  10. #10
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    ah... La balise user c'est pas un contact, mais un utilisateur de cette appli

    lol j'avais pas compris

  11. #11
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Je me suis décidé tout à fait pour les fichiers Xml, c'est vraiment ce qu'il y a de plus adapté à ce que je veut faire

    Merci à vous

  12. #12
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Bonsoir,

    j'ai quand meme encore une question :

    J'hésites entre 2 manières de faire :
    1. Au lancement de l'application, je charge toutes les données du fichier xml dans un tableau ou je ne sais quoi, pendant l'execution je travaille sur ce tableau et à la fin j'enregistre tout dans le Xml
    2. Je travaille toujours dans le Xml


    Je pencherais plutot pour la deuxième solution mais j'ai peur que ca fasse ralentir l'appli...

    Que me conseilleriez vous ?

    Merci

  13. #13
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Personne n'a une idée sur la question ?

  14. #14
    Membre expérimenté Avatar de schneidb
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    236
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 236
    Par défaut
    Si tu travailles constamment avec ton fichier, c'est pas terrible car le jour où tu veux par une base de donnée, plein de nom de classe à changer... + les problèmes de performances que tu as cité.

    Autant passer un vecteur au lancement de l'application qui est rendu par la classe ReadXML. Et ensuite passer ce même vecteur modifié à la classe WriteXML.

  15. #15
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Ouais je suis d'accord que c'est plus pratique, mais si l'appli est quitté brusuquement, toutes modifs sont perdus...

    A moins qu'à chaque changement, je modifie les données dans le tableau et dans le xml, mais que je continue à travailler sur le xml...

    C'est une bonne idée ?

  16. #16
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Citation Envoyé par schneidb
    Si tu travailles constamment avec ton fichier, c'est pas terrible car le jour où tu veux par une base de donnée, plein de nom de classe à changer... + les problèmes de performances que tu as cité.

    Autant passer un vecteur au lancement de l'application qui est rendu par la classe ReadXML. Et ensuite passer ce même vecteur modifié à la classe WriteXML.
    Tout depend de la taille du fichier , s'il est gros vos mieux utiliser SAX pour le lire et le mettre a jours et donc ne pas tout charger en memoire .
    Sinon pourquoi ne pas le charger oui mais autant garder l'arborescence DOM non ? (enfin apres c a toi de voir ce que tu prefere)

    De plus s'il passe un jours sur une base de données il n'auras rien a changer, si la conception est bien faite , il auras juste a implementer une nouvelle classe respectant(ou implementant) le meme contrat (ou interface) que sa classe XML et de l'injecter dans son programme !!

    C'est le principe ouverture/fermeture de methode , on ferme la methode au changement mais on l'ouvre a l'extenssion
    Enfin voila un lien qui vous l'expliqueras mieux que moi :
    http://www.design-up.com/design/principesoo/ocp.html

    je l'ai lu recemment et je pense que tout developpeur objet devraient connaitre ce principe
    Je dis ca mais ça fait une semaine que je le connais

  17. #17
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    C'est intéressant ton lien

    Je pense que je vais suivre l'idée de tout mettre dans des vecteurs et à chaque modification, je vais écrire dans le xml

  18. #18
    Membre Expert
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Par défaut
    J'arrive un peu en retard mais as-tu pensé à utiliser une "mini" base de données du style de Derby, qui a l'avantage de pouvoir étre embarqué avec ton application.


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  19. #19
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Non j'y avais pas pensé, je connaissais meme pas derby. Mais j'ai décidé de faire avec xml, mais c'est bien de connaitre ca

    Merci

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

Discussions similaires

  1. [Conception] Stockage des images en base OUI / NON ?
    Par hisy dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 16/03/2007, 13h39
  2. Réponses: 2
    Dernier message: 20/02/2007, 21h15
  3. [Conception] stockage emails en base de données - protection envoi
    Par mussara dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/01/2007, 13h21
  4. [Conception] stockage en masse d'images
    Par xenos dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 04/11/2006, 04h57
  5. [Conception][Stockage]Fichier XML, SGBD ?
    Par le Daoud dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 17/02/2005, 15h06

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