2017-08-31 5 views
0

Frameworkは、プロジェクトに含ま:春ブーツ、春のセキュリティ、春のWeb、のNeo4j、このようなカスタムクエリでのNeo4jデータベースを更新するためにTomcatなど古いデータは

問題(Aコレクションとしてパラメータとして使用)

@Query("START user=node({u}) SET user.authorities = {rightIds} RETURN user") 

User putRolesByArray(@Param("u")User user, @Param("rightIds") List<String> rightIds); 

クエリの出力結果(System.out.println)では、オブジェクトの変更は一切返しません。コンソールにエラーはありません。しかし、ここではいくつか間違っています。なぜなら、Neo4jブラウザでは、Userオブジェクトに適用された正しい変更が実行時にJava部分に適用されないことがわかります。私はこれを見つけたHow to pass Collection Parameters to Repository Queries for Neo4Jボルトドライバをhttpドライバに変更し、ボルトドライバのバージョンを2.0.0から3.0.0に変更します。助けません。 Spring Securety?何か案が?

答えて

1

これは定義された動作です。参考資料を参照してください。

セッションによってエンティティが追跡されると、同じセッションの有効範囲内でこのエンティティを再ロードすると、以前に読み込まれたエンティティがセッションキャッシュに返されます。

http://neo4j.com/docs/ogm-manual/current/reference/#reference:session:configuration

あなたがセッションをクリアする必要が更新された状態を取得したい場合。

session.clear(); 
+0

思い出してくれてありがとうございます、セッションについて完全に曇っています。 – abmerday

関連する問題