我的应用程序将使用以下技术:
我理解(来自Hibernate Spatial文档)必须使用以下方言:org.hibernate.spatial.dialect.postgis.PostgisDialect
我不明白的是上述方言如何与标准的Posgresql方言有关,即org.hibernate.dialect.PostgreSQLDialect
...
Postgis方言是标准Posgresql方言的超集吗?
Postgis方言中是否可以使用最新标准Posgresql方言的所有功能?
我想我不能在同一个entityManager工厂上使用多个/多个方言......那么最好的做法是什么来充分利用这两种方言呢?
答案 0 :(得分:4)
PostgisDialect实际上扩展了Postgresql方言,所以,是的,它是一个超集。请参阅课程声明:PostgisDialect class declaration
这里有一个很好的教程:Hibernate spatial with Postgis表明你只需要包含Postgis Dialect就可以保留空间和非空间字段。
Postgis primary在Postgresql之上提供对空间对象的支持。 Postgis安装还包括GEOS(Java拓扑套件的C ++端口),它提供了许多实际的几何函数,Proj4,它支持不同的坐标系统/投影和GDAL,它是各种地理数据格式之间的转换实用程序。 / p>