XML Werte einlesen aber wie am besten weiterverarbeiten?

martin1989

Aktives Mitglied
Schönen Nachmittag!

Ich habe eine xml Datei mittels JDOM in java eingelesen, hat wunderbar funktioniert.
Nun habe ich folgende Datenstrukutur:

Code:
<node1> 
   <blabla>
   <blabla2>
   <blabla3>
   ...
</node1>
<node2> 
   <blabla>
   <blabla2>
   <blabla3>
   ...
</node2>
usw...

meine Frage wäre, wie gestallte ich das Datenhandling am besten in Java? Ich will die Werte/Attribute der "blabla" später für jede "node" in einer GUI mit SWING anzeigen lassen.

Meine Idee wär gewesen eine Klasse mit "blabla" als Attributen zu machen und dann für jede "node" eine neue Instanz anlegen. Dann hätte ich quasi für jede node ein objekt/instanz.

Ist das so der übliche weg oder geht man hier anders vor? zB mit Array Lists oder so?
In den "blabla" Tag steht meist eine Zahl aber auch Sätze.


Vielen Dank und beste Grüße,
Martin

P.S.: hab hier schon im Forum geschaut und am nähesten am meiner Frage wäre dieser Thread gewesen: http://www.java-forum.org/xml-und-c...-einlesen-verarbeiten.html?highlight=jdom+xml
 
Zuletzt bearbeitet:

martin1989

Aktives Mitglied
oder wäre es empfehlenswert dies gleich mit arrays (zb.: multidimensional) zu machen, da dies dann besser geeignet wäre wenn ich das ganze zB in einer JTable anzeigen lassen will?
 

Thallius

Top Contributor
Irgendwie kapier ich deine denke nicht. Natürlich brauchstcdu sowohl eine eigene Klasse mit Attributen die den Blabla entsprechen als auch mindestens ein Array von Objekten dieser Klasse für jede Node eine. Ohne Klasse geht es höchstens wenn du ganz merkwürdige Konstrukte mit irgendwelchen collections macht. Ohne Array geht es gar nicht.
 

martin1989

Aktives Mitglied
hy thalluis!

das ich ein array für alle objekte einer jeden node brauche war mir klar :) ich meinte, ob ich die Inhalt der "Blabla" in attribute speichern sollte oder in listen.

Ich habs jetzt mal auf beide wege gelöst. einmal hab ich für jede "node" ein objekt erstellt das die "blabla" werte den definierten attributen des objektes zuweist.

Dann hab ichs noch versuch in dem ich wieder für jede node ein objekt erstelle und aber nicht mehr attribute sondern nur mehr eine Map. Hab dann den blabla namen als key in die map geladen und den inhalt als value. Hat auch funktioniert. Diese vorgehensweise ist ein wenig flexibler da ich nicht die attribute schon vor definieren muss sondern direkt in die map schreiben kann, je nach dem wie sie heissen und wieviele es sind.

Ich werde jetzt dann schauen welche vorgehensweise besser geeignet ist um den inhalt von blabla in tabellen auf einer swing gui darstellen zu können :)

Danke für deine antwort !
 

lhein

Top Contributor
Warum nicht einfach annotierte POJOs erstellen and dann dein XML mit JAXB einlesen / ausgeben? Das wandelt dein XML sofort in die entsprechenden Klassen um und du hast ein sauberes Model.
 

martin1989

Aktives Mitglied
Hallo lhein!

Was sind den annotierte Objekte? :)

Der Grund warum ich DOM verwendet habe war, weil es für mich ganz einfach anzuwenden zu schien.
Wäre JAXB auch eine einfach anzuwendende alternative?

Danke, lg
 
Zuletzt bearbeitet:

martin1989

Aktives Mitglied
danke!

so wie ich das sehe brauche ich dann aber das schema des xml files oder?
das sieht bei mir aber bei jedem xml files anders aus, sprich es ist immer unterschiedlich tief geschachtelt und mit DOM habe ich es so gelöst das ich einfach so tief in den baum hineingegangen bin bis zum element das keine kinder mehr hatte und da will ich ja auch immer hin :)
 

lhein

Top Contributor
die Elemente des XML Files sollten bekannt sein, sonst kannst Du ja keine classes mit Annotations erstellen. Das ist aber eigentlich in den meisten Fällen so. Du könntest ja mal deine XML Dateien posten.
 

martin1989

Aktives Mitglied
das xml sieht eigentlich immer so aus:


Code:
<node1> 
   <node2>
       <bla>
       <bla>
  </node2>
  <node3>
    <node4>
      <node5> 
         <bla>
         <bla>
      </node5>
    </node4>
  </node3>
</node1>

also je nach file kann es unterschiedlich tief in den baum hineingehen bis zu der letzten node wo dann die bla attribute sind.
 
Zuletzt bearbeitet:

martin1989

Aktives Mitglied
dies schaut auch ganz vielversprechend aus :)

viel anders mach ich es ja auch nicht mit JDOM, da hangle ich mich halt mit .getChildren so tief hinein bis NULL zurückkommt und hole mir dann in dieser ebene mit getAttribute die werte :)

ich werd mir das mit dem xpath auf jedenfall noch mal genau ansehen und schauen ob es event. so einfacher wäre :) danke :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Int-Werte in XML-Datei schreiben (DOM) XML & JSON 2
S JAXB - Any Elementliste - wie Werte verändern? XML & JSON 4
F Aus XML mit JDOM aus Elementattributen Werte rauslesen XML & JSON 4
G xpath: in Kindelement zwei Attribut-Werte auslesen XML & JSON 2
S XML Parsen und Werte zwischenspeichern XML & JSON 2
S XSD-Datei zulässige Werte auslesen XML & JSON 3
enne87 Element-Werte werden falsch ausgelesen XML & JSON 2
H Liste voller Objekte und Werte in XML via XStream XML & JSON 3
M DOM, Werte mit setAttribute in XML schreiben XML & JSON 3
T Werte in XML Datei an entsprechender Stelle einfügen XML & JSON 3
M XML werte auslesen ! XML & JSON 3
P JDOM Werte verändern XML & JSON 4
iman XML Attribute mit JAVA einlesen mit Spring Batch XML & JSON 0
J Object in JSON Datei einlesen und als neues Object erzeugen (in ein Object Array) XML & JSON 29
I Mit Hibernate eine XML-Datei in eine Tabellenspalte einlesen. XML & JSON 1
L XML einlesen gleichnamige Elemente XML & JSON 5
T HTML mit Hilfe Jsoup einlesen XML & JSON 11
R xlsx-Datei mit Apache POI einlesen XML & JSON 18
S CSV Datei einlesen und XML Ausgeben XML & JSON 2
W XML einlesen und Attribute auslesen XML & JSON 1
L XML nur ein Element einlesen XML & JSON 2
L Jackson JSON: Probleme beim einlesen XML & JSON 1
S XML in JTable Einlesen XML & JSON 3
B XML analysieren und einlesen XML & JSON 26
Z XML Datei mit JDOM einlesen und verarbeiten XML & JSON 6
Ollek XML Einlesen - Welche API ist die richtige? XML & JSON 14
X XML einlesen XML & JSON 6
C JAXB: XML-Elemente einlesen und als XML-Attribute ausgeben XML & JSON 7
jstei001 .xsd File wärend der Laufzeit einlesen und XMl rausschreiben XML & JSON 5
J XML mit russischem Inhalt einlesen XML & JSON 4
D XML Einlesen mit JaxB XML & JSON 4
K Einlesen eines Parameters aus HTML-Datei XML & JSON 4
D Wie XML Datei einlesen und HTML entities übernehmen? XML & JSON 3
B Validierung nur beim einlesen oder auch beim schreiben? XML & JSON 4
B SAX-Parser - Dokumente einlesen und in einer Map ablegen XML & JSON 2
N xsd pattern in java einlesen XML & JSON 6
F Einlesen von JDBC connection in Java von XML XML & JSON 4
J wert IN einem tag einlesen/schreiben XML & JSON 4
F XML erzeugen aus JTree und wieder einlesen... XML & JSON 6
N JDOM: XML einlesen XML & JSON 4
F XML mit DOM einlesen- Teile in Arraylist speichern XML & JSON 4
S XML einlesen XML & JSON 18
F XML Datei in Java einlesen XML & JSON 4
H XMI über EMF / UML2 einlesen XML & JSON 7
S XML einlesen, analysieren, bearbeiten & als Textdatei ausgeben XML & JSON 1
E XML Datei einlesen und Elemente in der Console ausgeben XML & JSON 6
H xml-Datei mit Attributen einlesen XML & JSON 3
C xml "zeilenweise" einlesen XML & JSON 6
B XML einlesen und in Datenbank schreiben XML & JSON 1
S XML-Schema einlesen um parsen zu erleichtern? XML & JSON 2
L Element einlesen <Telefon name="Karl">134313 XML & JSON 2
G XML Tag beim Einlesen manipulieren XML & JSON 2
J XML-Datei ein Array einlesen XML & JSON 10
P Große XML Datei mittels JDOM bearbeiten / einlesen XML & JSON 6
G Simples XML File einlesen mit JDom. Prefix not bound ? XML & JSON 2
M Liste in Baumstruktur einlesen XML & JSON 4
D nicht (ganz) valiedes XML einlesen! XML & JSON 19
S Einlesen einer xml Datei XML & JSON 4
S XML Datei einlesen, aber root überspringen XML & JSON 2
M XML einlesen - prüfen ob Element vorhanden XML & JSON 2
M NullPointerException bei Einlesen XML XML & JSON 3
J XML - schreiben und einlesen (Schema) XML & JSON 14
S XML Strings in JAVA einlesen, aber wie? XML & JSON 8
K JDOM SAXBuilder einlesen XML & JSON 6
G Newbe - Frage.XML - Datei einlesen und speichern XML & JSON 2
G xml einlesen und bestimmte Elemente an eine gui_Klasse überg XML & JSON 25
B XML String einlesen XML & JSON 4
M mit JDOM XML-Datei einlesen, die nicht "well-formed&quo XML & JSON 3
T Newbie Frage. CSS Stylesheet einlesen und suchen nach Tags XML & JSON 6
P OutOfMemoryError beim Einlesen einer XML-Datei XML & JSON 7
C Zeile herausfinden in der ein Fehler beim Einlesen entsteht XML & JSON 3
R wie kann ich ein xml file in einen string einlesen? XML & JSON 2
N Objekte via XML speichern und wieder einlesen XML & JSON 12
R POST REQUEST: XmlDocument mit getInputStream einlesen! XML & JSON 6
G xml, jdom "Entität wurde referenziert aber nicht deklariert." XML & JSON 4
M XSD - Child Element möglich, aber nicht zwingend erforderlich XML & JSON 6
P PHP-Seite anfragen, aber nicht darstellen XML & JSON 5
R JDOM Root-Element entfernen aber Rest behalten XML & JSON 10

Ähnliche Java Themen

Neue Themen


Oben