2015-10-06 330 views
2

目的是通過JAVA來連接MongoDB的遠程服務器:連接到MongoDB的使用JDBC驅動

URL = "jdbc:mongo://" + serverIP + ":" 
    + port+ "/" +databaseName;      
    Class.forName("mongodb.jdbc.MongoDriver"); 
    dbConn = getConnection(URL,mongo1, mongo1); 

試過Unity_trial.Jar,mongo_version.jar文件,但錯誤出現是'mongodb.jdbc.MongoDriver' classNameNotFound 。

如果我發表意見的Class.forName線,下一個錯誤是

URL = "jdbc:mongo://" + serverIP + ":" + port 
    + "/" +databaseName; 

是格式不正確。 不知道我在哪裏犯錯。 感謝您的幫助提前。

+0

你有沒有試過MongoClient? 'MongoClient mongo =新的MongoClient(「localhost」,27017);' – Natalia

+0

感謝您的回覆,我試過了,但要求是使用jdbc連接器。 – manoj

回答

1

您可以檢出該項目:

https://github.com/erh/mongo-jdbc

有給出兩個例子。

但總的來說,我會建議使用MongoDB客戶端或一些Spring Data抽象。

1

如果您正在收到ClassNotFoundException,則問題是包含mongodb.jdbc.MongoDriver類的jar不在您的類路徑中。如果你不確定這個班級是什麼JAR,我會推薦7-Zip,以便你可以檢查罐子裏的內容,並親自查看班級是否在那裏。

用你的方法連接到MongoDB中正確的方法是:

Class.forName("mongodb.jdbc.MongoDriver"); 
String URL = "jdbc:mongo://<servername>:<port>/<databaseName>"; 
Connection jdbcConn = DriverManager.getConnection(url,"user","pass"); 


但MongoDB是不是真的爲了與JDBC使用,因此,如果您的要求允許,我會建議得到一個連接「mongodb」的方式。

MongoClient client = new MongoClient("localhost"); 

有關如何做這種方式的細節,see the MongoDB docs

+0

謝謝,但我沒有得到mongodb jar文件,它有這個路徑和類MongoDriver。我也用Unity-jdbc論壇進行了檢查,但那裏的jar文件也不一樣。 – manoj

0

我今天早上遇到了這個問題。 關鍵缺失mongo-java-driver.jar。 當我添加jar時,該項目可以正常運行。

相關問題