PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Use o tipo Point com PostgreSQL e JPA/Hibernate


INSTALE AS EXTENSÕES DO POSTGIS EM SEU BANCO DE DADOS.

O erro que você está encontrando é porque você não instalou nada em seu banco de dados com o qual o Hibernate possa se relacionar. É o postgres que está reclamando, a saber:

Suas anotações e configurações dizem que dependem do PostGIS:
<property name="hibernate.dialect"  value="org.hibernate.spatial.dialect.postgis.PostgisDialect" />

Então, basicamente, você está tentando usar uma configuração não suportada.

O PostgreSQL não vem com todos os tipos de dados possíveis que alguém já pensou, como o Oracle faz. Então, quando o Hibernate diz "Eu quero uma 'geometria', o PostgreSQL apenas diz "o que é uma geometria?" PostgreSQL é muito extensível, então foi isso que o pessoal do PostGIS fez - eles construíram uma extensão. Qualquer um pode instalá-lo ou executá-lo completamente sem ele. O único problema causa é quando alguém o espera no banco de dados pronto para uso, em vez de ser um complemento.

Suponho que você possa tentar fazer engenharia reversa dos tipos de dados do PostgreSQL e compilá-los em seu banco de dados. Geometria é uma superclasse mestre para PostGIS, pelo menos em Java e parece a mesma no banco de dados. Eu simplesmente não vejo por que você definiria uma configuração quando você nunca terá alguém para apoiá-la.

@blueish isso ajuda?