问题标签 [hibernate-spatial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
994 浏览

hibernate-5.x - 使用 Hibernate 5 和 Oracle 将几何存储为 SDO_POINT_TYPE

Hibernate 5.1.0.Final在 Java 应用程序中使用数据库持久性。这对我们来说会很方便,因为我们希望使用 Oracle 和 Postgres 实例,因此我们可以将此 ORM 作为抽象层。在使用 Hibernate-spatial 查询几何图形时的前一个问题中,我发布了一些配置。
现在的问题是当我们在 Oracle 中保留一些几何字段时。在我的 POJO 中,我有一个导入:

import com.vividsolutions.jts.geom.Geometry;

所以我在我的类中定义了以下属性:

它被持久化,我可以使用谓词来查询它。但是查看数据库内部,我可以看到 geom 字段的内容是:

MDSYS.SDO_GEOMETRY(2001,4326,NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1,1),MDSYS.SDO_ORDINATE_ARRAY(0.094,51.488))

而不是我想要的,查询速度更快,并且是 Oracle 推荐的:

MDSYS.SDO_GEOMETRY(2001,4326,MDSYS.SDO_POINT_TYPE(0.094,51.488,NULL),NULL,NULL)

我应该怎么做才能将其存储为点 ( SDO_POINT_TYPE) 而不是数组 ( SDO_ELEM_INFO_ARRAY)?

编辑:我尝试更改Point为如下所示,但据我所知,它没有任何区别。

0 投票
1 回答
74 浏览

spring - Hibernate 空间和 PostGIS 主键问题

我是 PostGIS 新手,我正在使用带有 Hibernate Spatial 和 Spring 框架的 PostGIS。问题是主键没有自动设置,将数据插入数据库时​​出现以下错误:

我已经在 MySQL 上测试了代码,它可以正常工作。但是,当使用 Hibernate Spatial 和 PostGIS 时,它给了我提到的错误。这是模型:

下面是插入数据的代码:

以下是 Maven 中的依赖项:

和休眠配置:

我将不胜感激任何帮助。如果需要任何其他信息,请告诉我。

0 投票
2 回答
90 浏览

offline - Hibernate 空间已离线 - 任何人都可以获得更多信息

几天以来, hibernatespatial.org以及邮件列表和 Maven 存储库都处于离线状态。有人有这方面的消息吗?

0 投票
3 回答
7785 浏览

java - 如何使用 postgis 和 hibernate-spatial 正确映射多边形类型?

假设我有下表

和实体类

我设法保存了一个 Foo 实体,但是,我无法从数据库中选择它们。我得到这个例外:

然后,我在多边形字段顶部添加了以下注释:

但它抛出另一个异常,说这种类型不能被实例化:

请注意,我将 5.1.0.Final 版本用于休眠和休眠空间。

谢谢

0 投票
1 回答
903 浏览

java - 从 4.3 到 5.1 的休眠迁移:几何映射问题 (NumberFormatException)

我目前正在将 Hibernate 从 4.3 升级到 5.1。当我尝试从数据库中读取 JTS 几何字段时遇到问题。

映射类的相关摘录是:

我用 :

  • PostgreSQL 9.5
  • 后地理信息系统 2.2
  • 春天 4.2.6.RELEASE
  • 休眠核心和休眠空间 5.1.0.Final
  • net.postgis.postgis-jdbc 2.2.0
  • org.postgresql.postgresql 9.4.1208.jre7

抛出以下异常:

正如此错误报告中所建议的,我尝试从类路径中删除 postgis-jdbc 库。但是会抛出“java.lang.ClassNotFoundException: org.postgis.PGgeometry”。

任何帮助将不胜感激 !

0 投票
2 回答
885 浏览

java - hibernatespatial 版本 4 的 Maven 存储库是否已关闭?

我正在开发一个使用休眠和休眠空间版本 4.0 的项目。

在我的 pom 文件中,我已经像这样设置了存储库:

和这样的依赖:

此设置一直运行良好,直到 7 月初。现在,构建过程会尝试联系 hibernatespatial.org 以获取所有要下载的包,但只会收到超时警告。

我注意到,新版本 5.x 已迁移到 hibernate.org。旧存储库是否有任何更改?

提前致谢。

0 投票
2 回答
415 浏览

hibernate - Hibernate 5.1 + Vertica Spatial - 将所有内容放在一起

错误:

com.vertica.support.exceptions.DataException:[Vertica]VJDBC 错误:无法直接插入或复制用户定义的类型。请使用适当的用户定义函数计算它们

我现在的方言

}

我的依赖

我的 Vertica 表

我的模型

我的测试

我的问题:

  • 我应该使用org.geolatte.geom.Polygon还是其他?还有这个com.vividsolutions.jts.geom包。我很困惑。Hibernate ORM文档没有用;它提到了两者,并且该示例未显示导入。
  • 我应该覆盖 Postgis 方言吗?Vertica 使用函数加载数据ST_GeographyFromText('LINESTRING(-42.0 23.0, -62.0 23.0)')
0 投票
1 回答
626 浏览

lucene - Hibernate Search查询所有实体相交点

我正在开发一个有餐厅的应用程序,每个餐厅都有送货范围,并且需要回答用户哪些餐厅可以送货到他/她当前的位置。

我使用休眠空间获得了一个简单的解决方案,但是当我进入休眠搜索结合地理搜索全文搜索(并且由于可伸缩性)时,我还没有找到解决方案。一些想法/建议/例子?

例如在 Hibernate Spatial 中,查询是这样的:

显然覆盖范围是餐厅的覆盖范围。

我认为使用 hibernate-search 处理它的解决方案是通过添加一个过滤器,但我发现的所有样本都没有类似的东西。

0 投票
1 回答
1962 浏览

hibernate - Hibernate-Spatial + PostGIS 中的谓词以使用纬度/经度在英里半径内进行搜索

我正在尝试使用 Hibernate-Spatial 中的谓词在 X 英里(用户定义)的半径内进行搜索。

尽管之前已经提出过此类问题,但之前仅使用 Predicates 提出过一次,并且可能不是最新的,因为它不起作用。而且我必须能够使用谓词而不是 HQL。

我通过另一个答案找到了如何为 PostGIS 的 WITHIN 关键字设置谓词,但无法运行查询。

最后设置后,我说明错误输出和包版本。

这是我的架构中的内容:

在我的模型中:

在 lat / lng 的设置器中调用更新位置。

谓词,我从Using JPA Criteria Api and hibernate spatial 4 together中获得

并使用 WithinPredicate 和 circle 工厂创建查询。

不幸的是,我在输出中得到的错误是:

gradle 中的休眠空间版本:

我怀疑这个问题可能是由于模型/模式设置为“地理(点,4326)”类型,但 shapeFactory 创建了“几何(点,4326)”类型的半径。

非常感谢您对此的任何帮助。谢谢。

0 投票
3 回答
902 浏览

java - Hibernate 空间查询异常,但在 postgres 控制台中工作

我正在尝试使用 Hibernate 和 Hibernate Spatial 在我的 Java 代码中执行此查询:

但是,此查询会导致异常:

我检查了查询,但找不到错误。但是,如果我得到这个相同的查询并在 postgres 控制台上执行,则该查询将在没有任何错误的情况下执行并返回正确的值。

拜托,有人可以帮助我吗?谢谢。