2016-04-01 16 views
0

私はいくつかの似たようなトピックがあることを知っていますが、どれも解決策を提示していません。したがって、Spring-data-neo4jを使用している場合、複数のグラフに接続する方法はありますか?異なるラベルを持つ同じインスタンス内のグラフではありません。Spring-data-neo4j複数のグラフ

または同等に、私はこの質問をすることができます。

私は別のポートに異なるのNeo4jインスタンスに複数のセッションを持つことが、バネのデータのNeo4jを設定するにはどうすればよいです。

ありがとうございました。 @Hungerへ

EDIT

おかげで、私は一歩前進だと思います。ここで問題となるのは、spring-data-neo4jを複数の 'PereistenceContext'を持つように設定する方法と、それぞれが個々のNeo4jインスタンスを参照することです。

+0

バージョンを使用していますか? –

+0

私はSpring-data-neo4j 4.0.0.RELEASEとNeo4j 2.3.2を使用しています。 –

答えて

1

異なるREST-APIが異なるデータベースを指し示すと宣言された異なるアプリケーションコンテキストを構成できます。

異なるデータベースからオブジェクトやセッションを混在させないでください。 注射には修飾子が必要な場合があります。

+0

これは良い面のように聞こえる。文書はありますか?一つのことは、リポジトリにどのセッションを使用するかを伝えることです。たとえば、 '@Query(" MATCH(n)RETURN n ")'のようなサイファーでは、 –

0

どのように持つ複数の構成について:

//First configuration 
@Configuration 
@EnableNeo4jRepositories(basePackages = "org.neo4j.example.repository.dev") 
@EnableTransactionManagement 
public class MyConfigurationDev extends Neo4jConfiguration { 

@Bean 
public Neo4jServer neo4jServer() { 
    return new RemoteServer("http://localhost:7474"); 
} 

@Bean 
public SessionFactory getSessionFactory() { 
    // with domain entity base package(s) 
    return new SessionFactory("org.neo4j.example.domain.dev"); 
} 

// needed for session in view in web-applications 
@Bean 
@Scope(value = "session", proxyMode = ScopedProxyMode.TARGET_CLASS) 
public Session getSession() throws Exception { 
    return super.getSession(); 
} 
} 

と別の1

//Second config 
@Configuration 
@EnableNeo4jRepositories(basePackages = "org.neo4j.example.repository.test") 
@EnableTransactionManagement 
public class MyConfigurationDev extends Neo4jConfiguration { 

@Bean 
public Neo4jServer neo4jServer() { 
    return new RemoteServer("http://localhost:7475"); 
} 

@Bean 
public SessionFactory getSessionFactory() { 
    // with domain entity base package(s) 
    return new SessionFactory("org.neo4j.example.domain.test"); 
} 

// needed for session in view in web-applications 
@Bean 
@Scope(value = "session", proxyMode = ScopedProxyMode.TARGET_CLASS) 
public Session getSession() throws Exception { 
    return super.getSession(); 
} 
}