How to do best ? hierarchische Tabelle...

wolf_703

Aktives Mitglied
hi all,

also ich möchte eine hierarchische Tabelle erstellen, deren Inhalt eine Teilmenge aus einer
langen hierarchischen Tabelle darstellt. Bahner bzw Triebfahrzeugführer kennen sowas als
"Elektronischer Buchfahrplan und Langsamfahrstellen", aber man kann auch an den Windows-Explorer denken.
Hier mal einen Screenshot..

Screenshot_ebula_br120.jpg

Als Datengrundlage stelle ich mir eine XML-Tabelle vor, von deren Einträgen ein Teil dargestellt wird.
Natürlich muss das senkrecht rollbar sein entsprehend dem Fahrtfortschritt (manuell oder in der Praxis
wohl auch elektronisch, z.B. per GPS).

Schreibvorgänge gibts da meines Wissens nicht. Die Knöpfe an der rechten Seite dienen wohl der Navigation oder auch
Datenquellen-Auswahl.

Also, die lange Liste wäre wohl als XML-Tabelle zu realisieren,
aus der nur ein Ausschnitt dargestellt wird.

Wäre hierzu eine List oder ArrayList vorteilhafter als eine 2-dim.Tabelle aus Strings ?
 
Größere Datenmengen als XML zu verwalten, ist meiner Meinung nach so eine semi gute Idee. XML als Ganzes einzulesen benötigt oft viel Speicher. XML zu Streamen verhindert aber wieder eine effektive Suche über alle Daten.
Wenn es um eine größere Datenmenge geht und du nur immer mit einer Teilmenge arbeiten willst, dann sind Datenbanken unschlagbar. Man muss ja nicht gleich mit einer Enterprise-DB beginnen. Für Tests und Programmierung bietet sich H2 an. H2 kann im embeded Mode laufen, also innerhalb deiner Anwendung. Es wird also kein Datenbankserver benötigt. Der Zugriff auf Datenbanken ist mittlerweile auch sehr einfach, wenn man sich die richtige Toolchain aussucht.
 
Was du eigentlich meinst sind Collections. Es gibt für jeden Anwendungsfall spezielle und optimale Collections. Um hier aber wirklich etwas zu empfehlen sind zu wenige Informationen vorhanden.
 
Größere Datenmengen als XML zu verwalten, ist meiner Meinung nach so eine semi gute Idee. XML als Ganzes einzulesen benötigt oft viel Speicher. XML zu Streamen verhindert aber wieder eine effektive Suche über alle Daten.
Wenn es um eine größere Datenmenge geht und du nur immer mit einer Teilmenge arbeiten willst, dann sind Datenbanken unschlagbar. Man muss ja nicht gleich mit einer Enterprise-DB beginnen. Für Tests und Programmierung bietet sich H2 an. H2 kann im embeded Mode laufen, also innerhalb deiner Anwendung. Es wird also kein Datenbankserver benötigt. Der Zugriff auf Datenbanken ist mittlerweile auch sehr einfach, wenn man sich die richtige Toolchain aussucht.
MySQLi mit In-Memory db ginge auch noch
 
Wie sehen denn deine "hierarchische Tabelle"-Daten aus? In welcher UI-Technologie willst du sie anzeigen? Vermutlich im Browser wenn es keine Mobile-App ist.
 
danke schon mal für Eure vielen Tipps !

werde mir erstmal gescheite EbuLa-Daten besorgen, kenne jemand, der Lokführer war

aus dem Bild ist ja zu erkennen, wie Struktur etwa aussieht..
die Datenmenge wird aber nicht so groß sein, da müßten so 100-200 Zeilen schon reichen..

hab aber relationale DB jetzt Nicht für diese Struktur ins Auge gefasst..gibts im Bereich XML nichts
ausgereiftes, was sich irgendwie ohne allzugroße Klimmzüge in JAVA-SE integrieren läßt ?
 
Du hast also die Daten bereits in einer XML Struktur oder hast diese als XML bekommen? Oder wie ist das zu verstehen?

Eine Sache, die ich gerne mache: Ich habe Datenklassen die der Struktur der XML Datei entsprechen (Oft gibt es auch eine xsd Datei, die das Schema der XML Datei beschreibt. Dann kann man sich die Datenklassen sogar generieren lassen!) und dann nutze ich eine Library wie Jackson um die XML Datei zu lesen. Dann hast Du direkt die Daten in entsprechender Form vorliegen um damit in Deinem Programm etwas zu machen.
 
nun, muß zugeben, das war jetzt n bisserl try and fly🤔
vor etlichen Jahren hatte ich mit schon mal mit XALAN,XERXES, xsd usw rumgeplagt und
wenigstens eine Menu-Struktur-Steurung aufbauen können..

jetzt ging das mit XPath doch deutlich schneller und der Code ist lesbarer😎

hier mal die momentane XML-Datei :
Java:
<?xml version="1.0"?>
<EBULA>
 <STATION>
  <HXMT>183 5</HXMT>
  <NAME>A-Stadt,
      <SPEC>XA37890</SPEC>
   </NAME>   
   <NAME>LA: Brücke 120m
    <SPEC>40km/h</SPEC>
   </NAME>   
 </STATION>
  <STATION>
  <HXMT>198 7</HXMT>
  <NAME>B-Dorf,
      <SPEC>Vf Sig3</SPEC>
   </NAME>   
   <NAME>
    <SPEC>Fdl anrufen</SPEC>
   </NAME>   
 </STATION>
</EBULA>

also da kriege ich alle Tags bzw Inhalte
 
das sind keine Ereignisse, sondern Vorgaben, was wann zu tun bzw zu beachten ist..
bei den heute gefahrenen Geschwindigkeiten reicht z.B. die Entfernung der Signalbaken
vom Signal oft nicht mehr für den Bremsvorgang aus !

der Screenshot ist von einer gefilmten Fahrt ("cabride IC")..zeigt doch die Struktur,
der Inhalt ist da unwesentlich..

wenn ich das mit den ArrayListen fertig habe, kann ich ja gerne mal den Code rüberreichen..Eile mit Weile😌
 
das sind keine Ereignisse, sondern Vorgaben, was wann zu tun bzw zu beachten ist..
Gut, nennen wir es Vorgaben.

der Screenshot ist von einer gefilmten Fahrt ("cabride IC")..zeigt doch die Struktur,
der Inhalt ist da unwesentlich..
Andersrum: was Du am Bildschirm siehst, ist einfach eine Darstellung der Vorgaben. Interessant dagegen ist, wie die Vorgabe aussieht. Eine Hierarchie kann ich da bislang nicht erkennen (auf den Bildern unter https://de.wikipedia.org/wiki/EBuLa), ich sehe da einfach eine Kilometerangabe und ein paar Zusatzinformationen. Und wenn Du eine Vorgabe entsprechend modellierst, musst Du nicht mit Listen von Listen von Strings rumhantieren, sondern hast halt z. B. eine Liste von Vorgaben.
 

Neue Themen


Zurück
Oben