Spring-Data-Neo4j-4を使用すると、デフォルトのREST APIのCRUD操作で返されるものは、Neo4jがさまざまなノードおよび関係タイプに割り当てる内部IDに結びついているようです。Neo4jでSpringデータを持つデフォルトIDフィールドを変更する
問題は、これらのIDは、私たちがSpring Dataの上に構築している私たちのサービスを使用するクライアントにとって本当の価値がないことです。たとえば、Personノードを削除する場合は、まず内部Neo4j ID(おそらく1234)を取得するためのクエリを実行する必要があります。次に、CRUD APIに対してDEL呼び出しを発行できます。
DEL http://myserver/person/1234
私の世界では、ユーザIDまたはGUIDコードに基づいてシステム内のPersonを認識します。 Spring Dataに固有のIDを使用させるためには、IDとしてmoryl
というユーザー名を使用して上記の削除呼び出しを行うことができますか?これにより、私たちのネットワーク内の他のシステムに知られているIDを持つユーザーに対してCRUDを実行させ、MATCH/RETURNクエリを実行して、選択したIDフィールドをNeo4j IDに変換する追加の呼び出しを行う必要がなくなります。
これを行う簡単な方法はありますか、またはSpring DataがユーザーであるCRUD機能メソッドを基本的に書き直す必要がありますか?
ありがとうございました。
interface Delete {
<T> void delete(T object);
<T> void deleteAll(Class<T> type);
void purgeDatabase();
void clear();
}
あなたはしかし、ノードを削除するためのリポジトリで@Query
を使用することができます。