Как правильно сопоставить полигон с SRID с помощью postgis и Hibernate Spatial 5.2

У меня есть класс сущности Java со столбцом, который аннотирован следующим образом:

@Column(name = "extent", columnDefinition = "geometry(Polygon,4326)")
private Polygon extent;

Когда я тестировал это, я получаю сообщение об ошибке, в котором говорится, что SRID отсутствует. Это имеет смысл, потому что многоугольник не имеет связанной системы координат (CRS), и удаление CRS устраняет проблему.

Есть ли другой способ доступа к этому столбцу через Hibernate с сохранением информации SRID? Я нигде не могу найти примеров, где бы говорилось об этом.

Спасибо


person Gabriella Turek    schedule 19.06.2017    source источник


Ответы (2)


Оказывается, у Polygon есть метод setSRID(int) для установки SRID. Да!

person Gabriella Turek    schedule 20.06.2017

person    schedule
comment
Пожалуйста, дайте объяснение кода. вставка некоторого кода в anwser не сильно поможет - person zizoujab; 05.11.2018
comment
В основном код преобразует массив координат в тип типа Polygon. setSRID явно устанавливает SRID, так как иногда в определении столбца гибернации мы опускаем SRID, и это требуется locationtech.github.io/jts/javadoc/org/locationtech/jts/geom/ - person Timothy Mugayi; 30.11.2018