問題タブ [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 に答える
2530 参照

mysql - HibernateSpatial APIでジオメトリオブジェクトのデータ型をポリゴンオブジェクトのデータ型から変更するには?

HibernateSpatial API を使用して Polygon シェイプをデータベースに保存しようとしています。このチュートリアルに従って値を保存しました。データベースサーバーとして Mysql を使用しています。そのため、シナリオにいくつかの変更を加えました。次のエラーを取得してデータベースに保存します。

: :エラー: :

エラー [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] (http-/192.168.5.244:8080-1) データの切り捨て: GEOMETRY フィールドに送信したデータからジオメトリ オブジェクトを取得できません

エラー [com.service.HibernateSaveService] (http-/192.168.5.244:8080-1) 例外 :_: ステートメントを実行できませんでした

ヒント

Polygon を Geometry データ型に直接渡そうとしているため、このエラーが発生しています(これは私の仮定です)。この問題を解決し、データベースに値を保存するのを手伝ってください。

私のコードは以下です。

エンティティ クラス :_:

持続クラス :_:

データベーススキーマ

よろしく、アルンラージ。

0 投票する
1 に答える
294 参照

java - Hibernate 検索 (4.5) @Spatial as @IndexedEmbedded

「場所」のリスト (セット) と @OneToMany の関係を持つエンティティ「メッセージ」があります - 空間エンティティ (メッセージには多くの場所がある場合があります -- 以下のクラスを参照してください)。Luke で見られるように、インデックスは正しく作成されています。2 つの「必須」ルールを持つ複合クエリを作成しようとすると、正しい場所の 1 つが指定された場合にのみ、クエリは要求されたメッセージを返します。onDefaultCoordinates() がリスト内の場所の 1 つだけを取るようなものです。理にかなっていますが、座標の各セットの名前を持つリストを作成できないため、 onCoordinates(String arg) を使用できません。クエリは次のとおりです。

クラスは次のとおりです。

および場所クラス:

.must(指定されたタイトル) と .must の 2 番目の座標セットを使用してメッセージ クラスをクエリすると、応答としてクラスが取得されます (特定の場所のみが必要ですが、これは別の質問です)。別の場所(インデックスにも存在する)で同じことを行うと、空の応答が返されます。何か案は??

0 投票する
1 に答える
4496 参照

hibernate - タイプ org.postgresql.util.PGobject のオブジェクトを変換できません

Hibernate Spatial と PostGIS の使用に問題があります。次のようなフィールドを持つエンティティがあります。

私が抱えている問題は、そのエンティティの場所が null でない限り、データベースからこれらのエンティティを読み込めないことです。null でない場合、次のエラーが発生します。

奇妙なことに、それらを問​​題なく保持できますが、ロードすることはできません。たとえば、次のようなことをするとします。

ポイントはPostgresqlデータベースに正しく保存され、クエリが機能します。ロードするときだけ、動作しません。

場所フィールド以外に、クラスから他のフィールドをロードすることもできます。たとえば、次のようになります。

動作しますが、次のとおりです。

しません。

これらは私のpom.xmlの依存関係です:

私が試すことができるアイデアはありますか?現時点では、永続化された GeometryType のみをクエリに使用する回避策がありますが、それを Java オブジェクトにロードしないでください。しかし、その解決策には満足していません。ありがとう!

0 投票する
1 に答える
793 参照

querydsl - Querydsl Spatial で INTERSECTS 操作を使用する方法

Querydsl で INTERSECTS 操作を使用しようとしています。

BooleanExpression を生成すると、次のメッセージが表示されます。

unknown operation with operator com.mysema.query.spatial.SpatialOps#INTERSECTS and args [entity.location, POLYGON((30 10,40 40,20 40,10 20,30 10))]

私はHibernateSpatialを使用しています..次に、次のことをしようとしています:

HibernateSpatialSupport に基づいて独自のクラスを作成し、HibernateSpatial で使用する有効な交差操作を作成します。

以下を使用して HibernateSpatialOps を作成しました。

private static final String NS = HibernateSpatialOps.class.getName(); public static final Operator<Object> INTERSECTS = new OperatorImpl<Object>( NS, "intersects({0}, {1})");

交差操作で BooleanExpression を生成すると、次のメッセージが表示されます。

unknown operation with operator org.project1.querydsl.HibernateSpatialOps#intersects({0}, {1}) and args [entity.location, POLYGON ((-0.948944091796875 39.49052944781087, -0.4988479614257812 39.49052944781087, -0.4988479614257812 39.39030533696812, -0.948944091796875 39.39030533696812, -0.948944091796875 39.49052944781087))]

手伝って頂けますか?

よろしくお願いします、