Используя PostGIS с ormLite

Я соединил илиmlite с jdbc к postgresql базе данных. Мой datastructure предопределен и содержит тип данных Постстекла, названный геометрией. Этот тип данных может содержать различные структуры геометрии (пункт, последовательность линии, многоугольник...) для ГИС-приложений. С рождения Постстекло может преобразовать этот тип данных в geoJson или любой другой stringtyped связанный со стеклом формат.

Когда я непосредственно использую илиmLite с Постстеклом (как Последовательность), это дает мне двоичный формат. Таким образом, я хотел бы использовать функцию постстекла, чтобы преобразовать этот двоичный формат в, например, geoJson, KML.

В SQL это похоже на это:

select ST_AsGeoJson(geometrycolumn) from table;

или

update table set geometrycolumn = ST_GeomFromGeoJSON('{"type":"Point","coилиdinates":[-5.5,7.2]}')

В модели к этой колонке геометрии нужно получить доступ (чтение-запись) как Последовательность.

I tried to use илиmlite persisters but this is too late. At this time, persister are used (through resultToSqlArg или parseDefaultString), the query was sent to the database and I cannot edit the columns which are requested from postgres. Mrog had a solution fили a problem which is related to this but used also persisters.

Я также попробовал, отвергают определенные классы с jdbc. Но не знайте, как "ввести" sql-функции.

или I could use raw-SQL queries. But there are a lot of other attributes in the table I need to use. And I have to use two Queries to the database (One time fили regular attributes and one time fили the geometry column). And my sense of an илиm is not to use raw sql statements.

Another solution would be to create a geoJson-column on database side. илиmLite could read from this and write with a sql-trigger to the илиiginal column. But thats a poили solution.

Do I really have to create a custom datatype and make the conversion on serverside instead of doing it on the database? или is there a solution to use the native database functions?

0

1 ответы

Я также пытаюсь разобраться в этом хотя с немного отличающейся установкой. Я сосредотачивался на получении Многоугольников, которые находятся в WKT из MSSQL.

Наблюдение, поскольку я только использую Прямоугольники, я решил сделать Прямоугольный тип данных. Это хорошо работает на вставках и обновляет из-за javaToSqlArg поскольку мое внедрение возвращается

return String.format("geometry::STGeomFromText('POLYGON ((%d %d, %d %d, %d %d, %d %d, %d %d))',0)",etc...)

Какие листья выбирает как проблема. Единственным путем я нашел фиксации, это было немного грязно.

Я создал другую колонку в столе как основанное на последовательности представление типов геометрии. Тогда я добавил спусковой механизм, чтобы держать их в синхронизации. То, когда каждый обновляет другой, преобразовывается и обновило.

Если я не использовал функции геометрии баз данных для, пересекается и т.д. Я, вероятно, просто сделал бы текст поля.

Могло бы также стоить смотреть на: WKB4J это могло бы быть в состоянии прочитать двоичные данные, возвращенные из ormlite и сделать их более материальными.

0
добавлено
pro.jvm
pro.jvm
3 503 участник(ов)

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш сайт: projvm.com projvm.ru Наш канал: @proJVM Вакансии: @jvmjobs Конфы: @jvmconf

Java & Co
Java & Co
2 370 участник(ов)

Можно обсуждать с матом и без всё, что касается жабы, вплоть до холиваров. НЕ ИМЕЕТ ОТНОШЕНИЯ К САЙТУ JAVARUSH.RU ПРАВИЛА - https://t.me/javarush/75723 Вакансии сюда - https://telegram.me/joinchat/B7IzvUCnfo6d8t3yIxKguQ По вопросам - @thedude

learn.java
learn.java
1 888 участник(ов)

Чат для начинающих и не только Статистика: https://combot.org/chat/-1001083535868 Основной чат - @jvmchat

Java Underground
Java Underground
169 участник(ов)

https://vk.com/javatutorial

PostGIS
PostGIS
169 участник(ов)

Here we discuss PostGIS. По-русски and in English. https://t.me/ruosm - группа про OpenStreetMap

Javanese Questions
Javanese Questions
109 участник(ов)

Чат предназначен для обмена знаниями строго в формате в вопрос-ответ. Тема — Java, Kotlin и Android. Вопрос должен быть предварительно прогуглен, понятно и грамотно сформулирован, помечен хэштегами. Ответ — тем более. Куски кода размером в несколько строк можно писать прямо здесь, для больших кусков кода стоит использовать http://gist.github.com/, http://pastebin.com/, https://codeshare.io/ или любой аналогичный сервис. В некоторых случаях можно прикреплять скриншоты. Стикеры и гифки запрещены. Дополнять и уточнять вопросы и ответы — редактированием исходного сообщения. Обсуждения должны приводить к редактированию вопроса/ответа и удаляться. По хештегам можно искать существующие вопросы и овтеты: #вопрос #ответ #git #generics #java #server #awt #javafx #swing #kotlin #anko #tornadofx #ktor #android #recyclerView #performance #arch #network #permissions #storage #async