Scala 如何消除MongoInternalException?

Scala 如何消除MongoInternalException?,scala,mongodb,mongointernalexception,Scala,Mongodb,Mongointernalexception,我试图在mongodb和scala中执行CRUd操作。。 我编写了以下代码。此代码编译成功,但出现运行时异常。我使用的是scala 2.8。有人能帮我吗 执行时出错: 线程“main”com.mongodb.MongoInternalException中的异常: DBPort.findOne失败 位于com.mongodb.DBPort.findOne(DBPort.java:153) 位于com.mongodb.DBPort.runCommand(DBPort.java:159) 位于com.

我试图在mongodb和scala中执行CRUd操作。。 我编写了以下代码。此代码编译成功,但出现运行时异常。我使用的是scala 2.8。有人能帮我吗

执行时出错:

线程“main”com.mongodb.MongoInternalException中的异常: DBPort.findOne失败 位于com.mongodb.DBPort.findOne(DBPort.java:153) 位于com.mongodb.DBPort.runCommand(DBPort.java:159) 位于com.mongodb.DBTCPConnector.testMaster(DBTCPConnector.java:369) 位于com.mongodb.Mongo(Mongo.java:140) 位于com.mongodb.Mongo(Mongo.java:124) 位于com.mongodb.Mongo(Mongo.java:81) 位于QuickTour.main(QuickTour.java:16) 原因:java.io.IOException:无法连接到[/127.0.0.1:8005] bc:java.net.ConnectException:连接被拒绝:连接 位于com.mongodb.DBPort.\u open(DBPort.java:205) 位于com.mongodb.DBPort.go(DBPort.java:85) 位于com.mongodb.DBPort.findOne(DBPort.java:145) ... 还有6个
错误为“无法连接到[/127.0.0.1:8005]”,您可以首先确保MongoDB正在运行,并且它正在该端口上运行。标准MongoDB端口是27017。

1。了解如何读取堆栈跟踪。2.不要在问题中把你的代码排成这么大的一块——这是极不可能有人想读的。如果你努力格式化代码,使其可读,你就更有可能得到答案。这一次我为您做了。如果您阅读(并遵循)常见问题解答,您将更有可能在此处获得有用的回复:。特别是,请参见“友善”、“我如何在这里提问”和“如果我没有得到好的答案怎么办?”。欢迎来到SO。
// crud.scala

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;

object crud
{
  def main(args:Array[String])
  {
    while(true)
    {
      println("")
      println("1.Insert ")
      println("2. Retriever ")
      println("3. Update")
      println("4. Delete")
      println("5. Exit")
      println("")
      println("Enter choice : ")

      val ch=Console.readInt

      ch match
      {
        case 1=>
          insert();
        case 2=>
          retrieve() ;
        case 3=>
          update();
        case 4=>
          delete();
        case 5=>
          System.exit(0)
      }
    }
  } //main

  def insert()
  {
    println("Enter the rollno")
    var roll=Console.readInt

    println("Enter the name")
    var name=Console.readLine

    println("Enter the age")
    var age=Console.readInt

    println("Enter the city")
    var city=Console.readLine

    println("Enter the marks")
    var marks=Console.readInt

    val mongo = new Mongo();

    var databaseName = mongo.getDB("mydb")
    var collectionName = databaseName.getCollection("student")
    val dbObject = new BasicDBObject()
    dbObject.put("rollno", "roll")
    dbObject.put("name", "name")
    dbObject.put("age", "age")        
    dbObject.put("city", "city")        
    collectionName.insert(dbObject);
    println("Inserted succesfully");
  }

  def retrieve()
  {
    println("Enter the rollno")
    var r=Console.readInt
    val mongo = new Mongo()

    var databaseName = mongo.getDB("mydb")
    var collectionName = databaseName.getCollection("student")

    val query=new BasicDBObject();
    val query1=new BasicDBObject();
    query.put("marks",new BasicDBObject("$gt","70"));
    var cursor = new DBCursor(collectionName,query,query1)
    println("The list of students is")
    while(cursor.hasNext)
    {
      println(cursor.next());
    }
  } //retrieve

  def update()
  {
    println("Enter the rollno of student to be updated")
    var no=Console.readInt

    val mongo = new Mongo()

    var databaseName = mongo.getDB("mydb")
    var collectionName = databaseName.getCollection("student")
    val query=new BasicDBObject();
    val query1=new BasicDBObject();
    query.put("rollno",new BasicDBObject("$eq",no));
    var cursor = new DBCursor(collectionName,query,query1)
  }

  def delete()
  {
    println("Enter the rollno of student to be deleted")
    var no=Console.readInt

    val mongo = new Mongo()
    var databaseName = mongo.getDB("mydb")
    var collectionName = databaseName.getCollection("student")
    val query=new BasicDBObject();
    val query1=new BasicDBObject();
    query.put("rollno",new BasicDBObject("$eq",no));
    var cursor = new DBCursor(collectionName,query,query1)

    while(cursor.hasNext)
    {
      collectionName.remove(cursor.next())
    }
  } //delete
}