2016-11-23 65 views
0
  1. 連接到多個NoSQL數據庫在我的web應用程序,我需要連接到MongoDB的Neo4j的,如何配置呢?
  2. 如果我需要連接到MongodbMysql,如何配置它?

回答

0

您需要定義不同的持久性單元。 例如,如果您使用的是persistence.xml文件它看起來像:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>            
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0" 
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> 
    <persistence-unit name="neo4j-pu">                 
    <provider>org.hibernate.ogm.jpa.HibernateOgmPersistence</provider>        
    <properties>                      
     <property name="hibernate.ogm.datastore.provider" value="neo4j_http"/>           
     ... 
    </properties>                     
    </persistence-unit> 

    <persistence-unit name="mongodb-pu">                 
    <provider>org.hibernate.ogm.jpa.HibernateOgmPersistence</provider>        
    <properties>                            
     <property name="hibernate.ogm.datastore.provider" value="MONGODB"/>       
     <property name="hibernate.ogm.datastore.database" value="ogm_test_database"/>     
     <property name="hibernate.ogm.datastore.create_database" value="true"/> 
     ... 
    </properties>                     
    </persistence-unit>      

    <persistence-unit name="mysql-pu">                 
    <provider>org.hibernate.ejb.HibernatePersistence</provider> 
    <properties>                            
     <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" /> 
     <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/jpatestdb" /> 
     ... 
    </properties>                     
    </persistence-unit>                  
</persistence>  

在這一點上,當你需要持久工廠或實體管理器,你需要指定名稱:

@PersistenceUnit(unitName = "neo4j-pu") 
EntityManagerFactory neo4jEMF; 

@PersistenceContext(unitName = "neo4j-pu") 
EntityManager neo4jEM; 

這與您使用Hibernate ORM或JPA完成的操作沒有任何區別。你也可以通過本地API來做到這一點,但我認爲你有這個想法。

相關問題