Entdecken Sie das eXistdb-Dashboard

Im letzten Tutorial haben wir gesehen, was diese leistungsstarke Abfragesprache für XML ist , wir konnten die Installation durchführen und wir haben gelernt, wie der Dienst gestartet oder bei Bedarf gestoppt wird.

Auf die Hauptoberfläche oder das Dashboard kann über den Browser zugegriffen werden. Sie besteht aus einer Reihe von Elementen, die uns zu bestimmten Funktionen und Dienstprogrammen des Tools führen. Dies ist wichtig, bevor wir mit komplexeren Konzepten in der Anwendung beginnen .

Das eXist-Dashboard

Um in das eXistdb- Dashboard zu gelangen, müssen Sie lediglich den Browser unter der Adresse localhost: 8080 / aufrufen. Dieser führt Sie direkt zu diesem Dashboard und zeigt uns die darin enthaltenen Funktionen:

exploring-exist.jpg

Wenn die standardmäßig bereitgestellten Funktionen die folgenden sind:

Java Admin Client
Diese Schaltfläche gibt uns das Startprotokoll für Java, mit dem wir von einem System aus, auf dem eXist nicht installiert ist, remote auf eine eXist- Installation zugreifen können.

Sammlungen
Über diese Schaltfläche können wir den Sammlungs-Explorer starten, mit dem wir die Kontrolle über den Inhalt der Datenbank aktivieren können.

Backup
Mit dieser Funktionalität können wir die Sicherung unserer Datenbank durchführen.

Herunterfahren
Mit dieser Funktionalität beenden wir den Service und verlassen das Dashboard.

Paket-Manager
Ein Paket besteht aus einer Reihe von Dateien, die zusammen bestimmte Funktionen bereitstellen, z. B. eine Anwendung oder Bibliothek, und mit dem Paketmanager können wir sie verwalten, indem wir die in eXist verfügbaren Dateien anzeigen , installieren und deinstallieren. Diese Pakete können aus den öffentlichen eXist- Repositorys stammen. Es ist sogar möglich, dass wir diese Pakete selbst entwickeln, um sie in unseren Anwendungen zu verwenden.

Benutzermanager
Hier können wir die Benutzer steuern, die in unserem eXist- Ökosystem vorhanden sind. Wir können sowohl Benutzer als auch Gruppen erstellen, ändern und löschen.

betterFORM Demo und XSLTForms Demo
eXist stellt uns zwei Funktionen zur Verfügung, die standardmäßig mit dem Tool zum Erstellen von XForms geliefert werden. Diese sind betterFORM und XSLTForms . In diesen Anwendungen erhalten wir eine Reihe von Beispielen, um mit der Verwendung dieser Funktionen zu beginnen.

eXist-db Demo-Apps
Hier finden Sie eine Sammlung von Anwendungen, die uns die Möglichkeiten und Fähigkeiten von eXist zeigen .

XQuery- und eXist-db-Dokumentation
Beide Anwendungen liefern uns die notwendigen Unterlagen, damit wir eXist problemlos nutzen können.

eXide
eXide ist ein Editor mit einer ansprechenden Benutzeroberfläche, mit dem wir mit XQuery, XML und anderen in eXist vorhandenen Ressourcen arbeiten können . Wir können dasselbe für eine Vielzahl von Aktivitäten verwenden, vom Schreiben vollständiger Anwendungen bis zum Experimentieren mit den Möglichkeiten des Tools.

Erkundung der Funktionalitäten

Nachdem wir einen Überblick über die Funktionen im eXist- Dashboard erhalten haben, wollen wir uns ansehen, was wir mit ihnen noch tun können.

See also  PostgreSQL - Funktionen

Erkundung der Datenbank

Um unsere Datenbank durchsuchen zu können, können wir den Sammlungsbrowser , den Java Admin Client und sogar eXide verwenden . Um die Sammlungen anzuzeigen , die wir präsentieren, verwenden wir den Sammlungsbrowser , der uns etwa Folgendes anzeigen sollte:

exploring-exist-2.jpg

Die Wurzel oder der Stamm unserer Sammlungen ist / db und dann haben wir, wie wir im Bild sehen konnten, Apps und ein System . In der Systemsammlung werden alle Informationen zur Konfiguration gespeichert, z. B. Benutzer, Gruppen und Versionen. Wir empfehlen, diese Informationen nicht manuell zu ändern, da dies zu Inkonsistenzen in eXist führen kann . Die Sammlung von Apps ist für das Speichern der Sammlung von Paketen verantwortlich, die während der Installation oder manuell aus einem der Repositorys enthalten sind. Wenn wir jemals eigene Anwendungen schreiben möchten, werden diese dort abgelegt.

Hallo welt

Wenn wir anfangen, mit einer neuen Technologie zu arbeiten, verwenden wir die bekannte Hello World, um ein kleines Beispiel zu erstellen und die Funktionsweise zu demonstrieren. In diesem Fall werden wir dasselbe mit den traditionellen XML- , XQuery-, XInclude- oder sogar XForms- Methoden tun.

Zuerst werden wir das Einfachste durchgehen, nämlich die Erstellung eines einfachen XML. Dazu führen wir das eXide- Tool aus und erstellen eine neue Datei mit dem Namen example_xml.xml. Darin platzieren wir Folgendes:

 <? xml version = "1.0" encoding = "UTF-8"?> <Items> <Item name = "hello"> Hallo Welt </ Item> <Item name = "community"> An die gesamte TechnoWikis-Community </ Item> Gegenstand> </ Gegenstände> 

Wir sehen eine einfache XML-Datei mit einer Reihe von Tags und Attributen, die in unserem eXide- Editor so aussehen sollten:

exploring-exist-3.jpg
Nachdem wir nun unser XML erstellt haben, werden wir fragen, wie wir auf die Daten zugreifen können, und es ist sehr einfach. Wir tun dies über die REST- Schnittstelle von eXist , für die wir nur über die URL von unserem Browser auf http: // localhost: 808 … ejemplo_xml.xml zugreifen müssen.

See also  UML - Aggregation und Zusammensetzung

exploring-exist-4.jpg
Dies ist jedoch nicht das, was wir mit der REST-Schnittstelle tun können. Wir können das Dokument direkt mit _query abfragen. Nehmen wir beispielsweise an, wir möchten auf das erste Element unseres Dokuments zugreifen. Dann würden wir folgendermaßen darauf zugreifen: http: // localhost: 808 … query = // Item [1] wo wir beim Zugriff auf unseren Browser das erste Element des Dokuments erhalten sollten:

exploring-exist-5.jpg
Wie wir sehen, war es recht einfach und dank der REST- Schnittstelle können wir die Informationen unseres Dokuments problemlos abrufen, aber dieses Mal werden wir die Methodik ändern und statt mit XML mit XQuery arbeiten , da wir nur eine neue Datei mit dem Namen example-xquery erstellen müssen wird die Erweiterung .xq haben , die von eXist erkannt wird und den folgenden Inhalt haben wird:

 xquery version "3.0"; let $ message: = 'Hallo Welt!' zurückkehren <results date = "{current-dateTime ()}"> <message> {$ message} </ message> </ results> 

Als letztes verwenden wir wieder unsere REST- Schnittstelle, um auf den Inhalt unseres Dokuments zuzugreifen. Sehen wir uns die Antwort des Browsers an:

exploring-exist-6.jpg
Darüber hinaus können wir unser Ergebnis als HTML-Seite anzeigen, die als Serialisierung bezeichnet wird. Dazu müssen wir nur den Code für die folgende Seite ändern und die Deklarierungsoption verwenden, um die Funktionalität zu aktivieren. Sehen wir uns den neuen Inhalt unseres Dokuments an:

 xquery version "3.0"; Deklarieren Sie die Option ex: serialize "method = html media-type = text / html"; let $ msg: = 'Hallo Welt' zurückkehren <html> <head> <title> Hallo Welt mit XQuery </ title> </ head> <body> <h3> Das aktuelle Datum und die aktuelle Uhrzeit sind: {current-dateTime ()} und es wird die folgende Meldung angezeigt {$ msg}! </ h3> </ body> </ html> 

Wir verwenden wieder unsere REST- Schnittstelle und sehen nun, dass unsere Ausgabe eine HTML-Seite ist:

exploring-exist-7.jpg
Mit eXist können wir auch XInclude verwenden , um mehrere Dokumente in eine einzige XML- Datei aufzunehmen. Wir können sogar auf XQuery- Skripte verweisen, die ausgeführt und zu den zuvor von uns aufgenommenen Elementen hinzugefügt werden.

 <? xml version = "1.0" encoding = "UTF-8"?> <XIncludeEnvelope xmlns: xi = "http://www.w3.org/2001/XInclude"> <xi: include href = "example_xml.xml" /> <xi: include href = "example-xquery.xq" /> </ XIncludeEnvelope> 

Wie wir sehen, verwenden wir die vorherigen Beispiele, die wir erstellt haben, um die Einschlüsse in unsere XML- Datei zu machen. Wenn wir über unsere Schnittstelle darauf zugreifen, können wir beide Ergebnisse in derselben Datei sehen:

See also  Installieren und Konfigurieren von Hyper-V in Windows Server 2016

exploring-exist-8.jpg
Schließlich können wir mit eXist deklarativen Inhalt in Form einer Webseite definieren. Dies erfolgt mit XForms , wobei eXist standardmäßig zwei Prozessoren für die Erstellung dieser hat, betterFORM und XSLTForms . Mit diesen können wir die Seiten erstellen, die die Logik enthalten, und die XForms rendern. In diesem Beispiel verwenden wir betterFORM . Sehen wir uns den Inhalt unserer Datei an:

 <html xmlns = "http://www.w3.org/1999/xhtml" xmlns: ev = "http://www.w3.org/2001/xml-events" xmlns: xf = "http: // www .w3.org / 2002 / xforms "> <head> <title> Hallo Welt XForms </ title> <! - Das XForms-Datenmodell: -> <xf: model id =" xforms-data-model "> < xf: submission action = "process.xq" id = "submit-id" method = "post" /> <xf: instance xmlns = ""> <Data> <Name /> <Date /> </ Data> </ xf: instance> <xf: bind id = "NameBind" node set = "/ Data / Name" required = "true ()" type = "xs: string" /> <xf: bind id = "DateBind" node set = "/ Daten / Datum "required =" true () "type =" xs: date "/> </ xf: model> </ head> <! - -> <body> <h1> XForms-Beispiel </ h1> < xf: group> <xf: input bind = "NameBind"> <xf: label> Name </ xf: label> </ xf: input> <xf: input bind = "DateBind"> <xf: label> Datum </ xf: label> </ xf: input> <xf: submit submission = "submit-id"> <xf: label> Verarbeiten </ xf: label> </ xf: submit> </ xf: group> </ body> </ html> 

Es ist wichtig zu erwähnen, dass alles, was wir in Bezug auf XForms tun, in Apps / Betterform gespeichert werden muss, da sonst die Anwendung keinen Zugriff darauf hat und die Erweiterung .xhtml sein muss, um korrekt zu funktionieren. Sehen wir uns unser Beispiel an, wenn wir es im Browser ausführen:

exploring-exist-9.jpg

Wie wir sehen können, ist es ein einfaches Formular, mit dem wir bestimmte Informationen eingeben können, um sie zu verarbeiten. Das Interessante an XForms ist, dass wir, wenn wir unsere Daten an einen bestimmten Datentyp binden, wie im Fall von xs: date, unserem Feld eine bestimmte Funktionalität zuweisen können, z in diesem fall bringen wir auf einfache weise und ohne probleme einen datepicker an.

Damit haben wir unser Tutorial abgeschlossen, in dem wir alle Funktionen von eXist durchgehen konnten , die von der Abfrage von Informationen in verschiedenen Arten von Dokumenten bis zur Erstellung dynamischer Formen auf der Basis agiler und einfacher Technologien reichen.

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *