XML (mit Datenbank im Hintergrund) auslesen

aja

Mitglied
Hallo,
ich möchte ein .xml-Dokument mittels Java auslesen. Mein ganzes Projekt soll eine Webapplikation sein und die ersten Schritte in Struts sind auch schon gemacht. Nun gehts an die eigentliche Arbeit und bevor ich loslege, möchte ich gerne Eure Meinung wissen :rolleyes:
Es wird nämlich eine xml-Datei ausgelesen, in der "Datenbank-ähnliche" Daten stehen, sprich: verschiedene Tabellen mit bestimmten Attributen, die auch teilweise mit Werten vorbelegt sind. Am Ende soll es möglich sein, die Attributwerte zu bearbeiten. Sehe ich das richtig, dass ich dann lieber DOM benutzen soll, damit ich die einzelnen Knotenelemente ansprechen kann? Wie kann ich die ganzen Elemente abspeichern, damit ich auf die Einzelnen zugreifen kann? Muss ich die in den Sessions in meiner Webapp immer weiterschleppen? Wie macht man es "günstig".
Wäre für jeden Vorschlag sehr dankbar, da ich ein richtiger Neuling auf dem Gebiet bin...

Schöne Grüße,
aja
 
Hallo,

erstmal würde ich dir Vorschlagen, dass du das ganze im Java-Forum postest. Dort wirst du eher passende Antworten bekommen, da deine Frage sich ja eher auf Java bezieht als auf XML.

Du kannst XML-Dateien auf zwei Arten verändern. Einmal indem ein DOM-Baum aufgebaut wird und einmal mit der StaX-API von Java.

Bei DOM ist der Nachteil, dass er komplett im Speicher gehalten wird, d. h. du hast schnell deinen Speicher voll. Wenn deine XML-Datei klein ist kann man es aber ruhig mit einem DOM-Baum lösen. So ein DOM-Baum lässt sich auch leicht auf die Festplatte schreiben.

Wenn die XML-Datei sehr groß werden kann, würde ich StaX empfehlen. Da wird nicht die ganze XML-Datei in den Speicher gelesen, sondern nur die Teile die du gerade lesen möchtest.


http://www.galileocomputing.de/openbook/javainsel6/javainsel_13_003.htm

MFG

zEriX
 
Danke für deine schnelle Antwort, zelix. Die Dateien werden standardmäßig um die 2000 Zeilen haben. Ich kann schwer einschätzen, obs viel für DOM ist... Kannst du vielleicht den Thread in Java-Forum verschieben, oder soll ich ihn dort nochmal posten?

Gruß,
aja
 
Ich bin leider kein Admin oder Mod. Deshalb solltest du dort nochmal posten.
Meiner Meinung nach kann man nicht sagen, ab wann man kein DOM-Baum verwenden sollte. Es kommt halt auf den Rechner an. Bei einem normalen PC sollte man halt wenn die XML-Datei mehrere MB groß ist, sollte man keinen DOM-Baum mehr aufbauen.
Wenn man die XML-Datei nur liest, dann sollte man erst recht keinen DOM-Baum aufbauen.

MFG

zEriX
 
Ok, das werde ich mir nochmal überlegen. Die Datei soll gelesen werden, dann sollte es möglich sein, einige Elemente zu bearbeiten und danach schreibt man die Datei wieder..
 

Neue Beiträge

Zurück