10

mongolabでmongodbインスタンスを作成しました。接続URIが提供されました。

   mongodb://<dbuser>:<dbpassword>@ds041177.mongolab.com:41177/myclouddb

次のJavaコードを使用してデータベースに接続しました-

      Mongo m = new Mongo();
     com.mongodb.DBAddress dba=new DBAddress("mongodb://admin:password@ds041177.mongolab.com:41177/myclouddb");
        m.connect(dba);

しかし、これはNumberFormatExceptionをスローします

   java.lang.NumberFormatException: For input string: ""

私は何が間違っているのですか?

4

1 に答える 1

21

これはMongoDBURIです。

に渡すのではなく、DBAddress単にに渡してからインスタンス MongoURIに渡します。Mongo

String textUri = "mongodb://admin:password@ds041177.mongolab.com:41177/myclouddb";
MongoURI uri = new MongoURI(textUri);
Mongo m = new Mongo(uri);

クラスは非推奨になったため、最新のドライバーにアップグレードしてMongoClientクラスに切り替えることも検討する必要があります。Mongo

String textUri = "mongodb://admin:password@ds041177.mongolab.com:41177/myclouddb";
MongoClientURI uri = new MongoClientURI(textUri);
MongoClient m = new MongoClient(uri);
于 2013-02-24T15:31:34.803 に答える