Archives des forums MMO/MMORPG > Forums divers > La Taverne > Java et XML
Java et XML
Par willoi le 14/11/2002 à 13:35:40 (#2560082)
J'ai deja fait pas mal de recherches et j'arrive à utiliser quelques fonctionnalités
Alors si vous avez des liens et/ou des suggestions
Par Foehn le 14/11/2002 à 13:47:14 (#2560195)
Par willoi le 14/11/2002 à 13:49:45 (#2560214)
c'est plutot de la doc qu'il me faut
merci quand meme
Sinon je precise que l'objectif est depuis un programme ralisé en Java c'est lire un fichier XML de facon aisée(genre je parcours pas le fichier à la main) et de pouvoir faire des recherches comme en sql!
Par Aron le 14/11/2002 à 13:59:04 (#2560312)
Donc premier point, demande toi d'abord ce que tu veux réellement faire avec cet xml. Le premier type de parsing n'est pas très adapté à des requêtes complexes. Sur des cours ou des exemples, je suis étonné que tu ne trouves rien de satisfaisant sur le net.
Par willoi le 14/11/2002 à 14:03:32 (#2560354)
et en particulier sur la classe java.xml.transformer (voir jdk1.4)
qui permet d'effectuer une selection à partir de criteres!
genre en sql ca ferait "select * from table_nom where nom=willoi"
et mon fichier xml ressemblerait à ca en simplifiant
willoi
Aron
etc ...
Par Foehn le 14/11/2002 à 14:07:52 (#2560397)
Le mieux effectivement pour pouvoir le triturer comme tu veux, c'est de le parser une fois, pour le stocker en mémoire sous la forme que tu désires (un joli singleton avec une lazy initialization pour gérer tout ça si on peut avoir accès aux données de plusieurs endroits dans ton appli). La question qu'il faut se poser dans ces cas là concerne la prise en compte des modifs du fichier XML -> si prise en compte "à chaud", ça peut devenir plus complexe à mettre en place (quoi que... avec la singleton, ça peut le faire, il suffit qu'il garde la datation du fichier en mémoire, et qu'à chaque accès il compare avec la datation du fichier : si le fichier est plus récent, on recharge.)
[edit]
Je ne connais pas le parser du JDK 1.4 (j'en suis resté à utiliser Sax ou Xerces, JDK 1.2 oblige), donc je ne peux pas t'aider sur ces fameuses méthodes de recherche... ceci dit, en gardant tes données en mémoire dans une Hashmap, avec comme clé ton critère principal de recherche, ça doit pouvoir se faire. Le hic intervenant dès que tu commences à vouloir faire du multi-critère. Faut réfléchir à la structure de conservation des données en mémoire puis mettre les mains dans le cambouis pour coder tout ça...
Faudrait p't-être que j'trouve le temps de jeter un noeuil sur le JDK 1.4...
Par Tabassor le 14/11/2002 à 14:21:26 (#2560505)
je ne m'y connais pas en xml, mais passer d'un select a direct une balise comme ca, je pense qu'il manque 3-4 etapes...
Par Foehn le 14/11/2002 à 14:49:21 (#2560720)
Par willoi le 15/11/2002 à 12:59:07 (#2567689)
si xml.Transformer pouvait me mettre le resultat dans un autre DOM ou qqch comme un TreeModel ou HashMap ca serait chouette. Car de là je peux tout mettre dans un JTree par exemple et exploiter le resultat de ma 'requete' comme je veux!
Tabassor --> pour le sql c'est un exemple , je voulais juste dire je veux faire comme en sql ! En effet ya un package en Java qui permet de le faire!
Par Aron le 15/11/2002 à 13:05:07 (#2567736)
Par willoi le 15/11/2002 à 13:12:09 (#2567813)
Par Foehn le 15/11/2002 à 14:57:19 (#2568614)
Concernant le JTree, j'ai un peu de mal à voir ce qu'il vient faire là, c'est une classe Swing... donc un composant graphique, si je ne m'abuse.
Quant à la transformation directe de ton fichier en Hashmap, je ne sais pas si c'est possible. Autant le faire à la main, tu auras plus de maîtrise sur ce que tu fais (et surtout tu ne resteras pas bloqué en attendant une solution ;) ) J'dois avoir des bouts de code à te filer si tu veux avoir un début de piste, envoies moi un MP avec une adresse mail si tu veux que je te balance tout ça.
Par willoi le 18/11/2002 à 13:18:37 (#2585934)
Provient du message de Foehn
Concernant le JTree, j'ai un peu de mal à voir ce qu'il vient faire là, c'est une classe Swing... donc un composant graphique, si je ne m'abuse.
Quant à la transformation directe de ton fichier en Hashmap, je ne sais pas si c'est possible. Autant le faire à la main, tu auras plus de maîtrise sur ce que tu fais (et surtout tu ne resteras pas bloqué en attendant une solution ;) ) J'dois avoir des bouts de code à te filer si tu veux avoir un début de piste, envoies moi un MP avec une adresse mail si tu veux que je te balance tout ça.
Bon , le Jtree, le HashMap etc... c'etait des exmples d'utilisations d'une structure arborescente telle que le XML.
Faut bien une interface pour ce fichier XML.
En effet une des fonctionnalités de mon programme va etre de visualiser des images avec leur commentaire et + si affinités et tout ca va etre stocké dans un fichier XML et trié par catégorie.
J'ai deja fait ce genre de choses avec des BDD mais là je veux que mon code fonctionne pour des applets pour des applis sous Windows ou Linux !
JOL Archives 1.0.1
@ JOL / JeuxOnLine