Zum Inhalt springen

Wahlweise XML oder Datenbank-Server


fontys-tipc

Empfohlene Beiträge

Hey Mädels, ich habe folgende Situation.

Ich möchte gerne Daten wahlweise in einer XML Datei oder auf einem Datenbank-server speichern (falls der server erreichbar ist, dann auf ihm)...

nun ist meine frage, wie ich die architektur aufbaun soll. ich hatte schonmal an eine abstrakte klasse bzw interface und 2 konkrete implementierungen gedacht. ist das sinnvoll?

Danke schonmal im vorraus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich möchte gerne Daten wahlweise in einer XML Datei oder auf einem Datenbank-server speichern (falls der server erreichbar ist, dann auf ihm)...

Wenn Du eine Hochverfügbarkeit haben willst, dann sorge dafür, dass das DBMS eben hochverfügbar ist. Dieses "Gefrickel", wenn DBMS nicht erreichbar, dann XML Datei schreiben, finde ich unprofessionell

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn Du eine Hochverfügbarkeit haben willst, dann sorge dafür, dass das DBMS eben hochverfügbar ist. Dieses "Gefrickel", wenn DBMS nicht erreichbar, dann XML Datei schreiben, finde ich unprofessionell

Phil

- Das ist nur auf den ersten Blick so. Wir habe auch Applikationen beim Kunden laufen, bei dem zwischen On-Line und Offline Betrieb unterscheiden wird (werden muss), z.b. will der Kunde mit dem Laptop unterwegs mobil arbeiten. Im letzteren Falll wird lokal in ein XML Cache serialisiert, welches beim nächsten Zugang zum Netz synchronisiert wird.

Gruss

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wir habe auch Applikationen beim Kunden laufen, bei dem zwischen On-Line und Offline Betrieb unterscheiden wird (werden muss), z.b. will der Kunde mit dem Laptop unterwegs mobil arbeiten. Im letzteren Falll wird lokal in ein XML Cache serialisiert, welches beim nächsten Zugang zum Netz synchronisiert wird.

Diese Information fehlt aber durch den OP!

Ich möchte gerne Daten wahlweise in einer XML Datei oder auf einem Datenbank-server speichern (falls der server erreichbar ist, dann auf ihm)...

Es ist weder eine Information über die Netzstruktur vorhanden, noch den Nutzen. Wenn es um eine mobile Anbindung geht, ist das sicherlich eine Möglichkeit. Als Alternative wäre auch ein SQL Lite möglich mit einem Sychronisationsmechanismus

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

das was dbwizard erlautert hat, soll ich umsetzen...es werden also daten auf der datenbank gespeichert und falls jemand unterwegs daten in eine xml datei speichert, so sollen diese spaeter mit der datenbank synchronisiert werden

wie kann ich das ganze nun umsetzen? das ganze mit java, einer oracle datenbank (also mit universellem JDBC Treiber) und einer XML datei die erzeugt wird, falls keine vorhanden ist...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also ich würde da spontan zu JaxB greifen:

Du legst Dir eben eine XML Struktur via XSD Schema an (Du beschreibst Deine XML). Aus der XSD generierst Du Dir die Javaklassen, dann kannst Du alle Nodes als Objekte ansprechen (Marshal / Unmashal) und das erzeugte XML ist immer valide.

Zusätzlich würde ich eine "abstrakte Schichte" in den Datenzugriff legen, die eben überprüft ob die Datenbank online ist oder nicht. Wenn nein, werden die Zugriffe auf die XML Klassen umgeleitet. In zyklischen Abständen oder beim Start der Anwendung prüfst Du eben, ob die Datenbank online ist und schiebst ggf die Daten einfach in die Datenbank via JDBC.

Die Anwendung kommuniziert mit der abstrakten Datenschicht, die dann die echten Zugriffe realisiert. Wenn es möglich ist, dann könntest Du die SQL Statements direkt in die XML schreiben, die Du dann einfach nur nacheinander ausführen musst, wenn die DB nicht online ist. (Datensicherheit bezügl. Transaktion usw sei mal in den Raum gestellt)

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...