Allgemeines
Der GISX 2.x Datastore erlaubt die Einbindung von Daten einer GISX 2.x Datenbank in GISX 3.
Sämtliche Konfigurationseinstellungen können in <GISX3HOME>/datastores/gisx2/config getroffen werden. Themendefinitionen befinden sich in <GISX3HOME>/datastores/gisx2/themes
Konfiguration
Für die Konfiguration sind folgende Konfigurationen notwendig.
database.properties
Konfiguration der Datenbankverbindung sowie der zu verwendeten Bestandteile der GISX 2.x Datenbank.
# database driver datasource.driver=oracle.jdbc.driver.OracleDriver # database url datasource.url=jdbc:oracle:thin:@myserver:1521:myinstance # database user datasource.username=USER # database password datasource.password=SECRET # the moduls that should be used. datasource.moduls=de.geograt.data.beans.gisx2.survey,de.geograt.data.beans.gisx2.commonpolygons
Die einzelnen Parameter im Überblick
Parameter | Beschreibung | Standardwert | Optional |
---|---|---|---|
datasource.driver | Der JDBC Datenbanktreiber | oracle.jdbc.driver.OracleDriver | Ja |
datasource.url | Die Datenbankadresse (Abhängig vom Treiber) | Nein | |
datasource.username | Der Benutzername in der Datenbank | Ja | |
datasource.password | Das (unverschlüsselte) Passwort des Benutzers in der Datenbank | Ja | |
datasource.moduls | Die zu verwendenden Module aus GISX 2.x | de.geograt.data.beans | Ja |
maxConnections | Die maximale Anzahl an offenen Connections zur Datenbank. Dieser Parameter steht seit GISX 3 - Version 1.0.19 zur Verfügung, da ein neuer ConnectionPool eingeführt wurde. Um das alte Verhalten wieder herzustellen, geben Sie hier den Wert 1 an (Es wird kein ConnectionPool verwendet) | 8 | Ja |
hibernate.properties
(Optionale) Konfiguration von hibernate. Bei Hibernate handelt es sich um die Zwischenschicht zwischen GISX 3 und der Datenbank.
# Hibernate dialect hibernate.dialect=org.hibernate.spatial.dialect.oracle.OracleSpatial10gDialect # the max fetch depth hibernate.max_fetch_depth=3 # true if generated SQL statement should be shown hibernate.show_sql=false # true if generated SQL statements should be formatted if shown hibernate.format_sql=false # true if strict ogc mode should be used. hibernate.spatial.ogc_strict=false
Die einzelnen Parameter im Überblick
Parameter | Beschreibung | Standardwert | Optional |
---|---|---|---|
hibernate.dialect | Verwendeter Dialekt für Hibernate. Hängt eng mit dem Datenbanktreiber aus database.properties zusammen. Wenn dort eine andere Datenbank (z.B. PostGIS) verwendet wird, sollte dieser Wert natürlich geändert werden. | org.hibernate.spatial.dialect.oracle.OracleSpatial10gDialect | Ja |
hibernate.max_fetch_depth | Maximale Tiefe bis zu der generierte SQL Anweisungen verschachtelt werden. | 3 | Ja |
hibernate.show_sql | Gibt an ob generierte SQL Anweisungen geloggt werden sollen (Level "DEBUG"). Dieser Wert sollte nur für Debugging Zwecke geändert werden. | false | Ja |
hibernate.format_sql | Gibt an ob geloggte SQL Anweisungen formatiert werden sollen. | false | Ja |
hibernate.hbm2ddl.auto | Gibt an ob neue Datenbankspalten, Indexe etc. bei Start von GISX 3 angelegt werden sollen. Zur Verfügung stehen die aus Hibernate bekannten Werte. | NONE | Ja |
hibernate.spatial.ogc_strict | Gibt an ob Hibernate im OGC Strict Modus arbeiten soll. Eine Aktivierung in Verbindung mit der Verwendung von ORACLE kann zu massiven Performance Problemen führen. | false | Ja |
Verfügbare Module:
- de.geograt.data.beans.gisx2.survey - Vermessung E5001 und E5002 aus GISX 2.x
- de.geograt.data.beans.gisx2.commonpolygons - Allgemeine Flächentabelle E1000 aus GISX 2.x
- de.geograt.data.beans.gisx2.location - Ort, Straßen und Hausnummernkoordinaten (Zurzeit nur in Stralsund)
- de.geograt.data.beans.gisx2.alkis - ALKIS (Flurstücke, Gebäude und ganze Rest)
- de.geograt.data.beans.gisx2.electricity - Elektro Trassennetz
- de.geograt.data.beans.gisx2.electricitycable - Elektro Schemanetz
- de.geograt.data.beans.gisx2.sewer - Kanal Hauptnetz (Inkl. Ausgestaltung)
- de.geograt.data.beans.gisx2.sewerha - Kanal Anschlussnetz
- de.geograt.data.beans.gisx2.sewerinspection - Kanal Inspektionen
- de.geograt.data.beans.gisx2.water - Wasserversorung Hauptnetz
- de.geograt.data.beans.gisx2.waterha - Wasserversorung Anschlußnetz
- de.geograt.data.beans.gisx2.gas - Gasversorgung Hauptnetz
- de.geograt.data.beans.gisx2.gasha - Gasversorung Anschlussnetz
- de.geograt.data.beans.gisx2.heating - Fernwärme Hauptnetz
- de.geograt.data.beans.gisx2.heatingha - Fernwärme Anschlussnetz
- de.geograt.data.beans.gisx2.grave - Friedhofskataster aus Hamburg
- de.geograt.data.beans.gisx2.tree - Baumkataster
datastore.properties
Optionale Konfiguration. Eine Beschreibung hierzu befindet sich in der allgemeinen Dokumentation zu Datastores.
Themendefinition
Die Themendefinition zu GISX 2.x Daten kann unter <GISX3HOME>/datastores/gisx2/themes vorgenommen werden.
Die Themendefinition findet wie in jedem anderen Datastore statt, nähere Informationen können an dieser Stelle nachgelesen werden.
Texte und Attributblöcke werden vor der Darstellung (und auch bei Befüllung des Caches) aufgelöst. Nährere Informationen finden Sie an dieser Stelle.
Optionen
Folgende Optionen stehen zur Verfügung:
Option | Wert | Beschreibung |
---|---|---|
USE_CADDATA | kein Wert notwendig | Bewirkt das Laden der CAD Daten, wenn auf diesem Thema eine Suche ausgeführt wird. Dies ist immer dann notwendig, wenn z.B. ein SymbolVectorizer als Formater verwendet wird und der zentrale Punkt des Symbols bei Suchergebnissen angesprungen werden soll. |
IGNORE_TEXTRESOLVING | kein Wert notwendig | Bewirkt, das für Zusatztexte keine Einzeltextauflösung verwendet wird. (Momentan werden Textfeatures immer in spezielle Features umgewandelt, die ein anderes Set von Attributen verwenden.) Folgendes Beispiel zeigt eine Themendefinition die genau dies für die Symbole der Inspektionsergebnisse von Haltungen durchführt. <?xml version="1.0" encoding="UTF-8"?> <Theme xmlns="http://www.geograt.de/namespaces/gisx3/themedefinition/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <visibleName>Beschriftungen</visibleName> <ignore>false</ignore> <dataSource>SewerEdgeInspectionResult:texts</dataSource> <searchable>false</searchable> <cache>false</cache> <filter>x.textKey = 'SYMBOL' and e.inspectionCoreData.inspectionStatus between 150 and 250 and e.status = 100 and x.value like '@(B)%'</filter> <options> <parameter> <key>IGNORE_TEXTRESOLVING</key> </parameter> </options> </Theme> Die passende Layerdefinition hierzu: <?xml version="1.0" encoding="UTF-8"?> <VectorLayer xmlns="http://www.geograt.de/namespaces/gisx3/layerdefinition/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <visibleName>Punktschäden</visibleName> <visibleByDefault>false</visibleByDefault> <minZoom>19</minZoom> <drawOrder>-102</drawOrder> <dataStore>gisx2</dataStore> <dataSource>sewer.inspection.sewer-edge-inspection-result-symbols</dataSource> <tileGrid> <minZoom>19</minZoom> <maxZoom>20</maxZoom> </tileGrid> <type>TileVector</type> <showTooltip>true</showTooltip> <iconStyle> <icon> <cql>strSubstringStart(value,4)</cql> </icon> <color> <layerValue> <rgbColor> <red>0</red> <green>0</green> <blue>0</blue> </rgbColor> </layerValue> </color> <rotation> <featureValue> <attributeName>rotation</attributeName> </featureValue> </rotation> <rotateWithView>true</rotateWithView> <scale> <layerValue>1.0</layerValue> </scale> <iconType>xml</iconType> </iconStyle> </VectorLayer> Man beachte vor allem die cql Anweisung zur Darstellung des Icons. Diese sorgt dafür dass "@(B)" vom Icon Namen entfernt wird. |