使用Java的MongoDB,无法获取集合

使用Java的MongoDB,无法获取集合,java,exception,mongodb,Java,Exception,Mongodb,我正在与MongoDB启动一个项目。 我有我的数据库: mongo=null; try { mongo = new Mongo(); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MongoException e) { // TODO Auto-genera

我正在与MongoDB启动一个项目。 我有我的数据库:

mongo=null;
    try {
        mongo = new Mongo();
    } catch (UnknownHostException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (MongoException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    db = mongo.getDB( "mydb" );
    System.out.print(db.getName());//just a test
我想显示特定集合的所有元素(在滚动窗格中,但这对问题并不重要)。集合最初不存在,因为数据库“mydb”为空。 这是我的代码:

        DBCursor cur = db.getCollection("newcollection").find();//collection should be created at this point, if it doesnt exist.


        while(cur.hasNext()) { //<----exception caused here
            //do something with cursor...
        }
dbcursorcur=db.getCollection(“newcollection”).find()//如果集合不存在,则此时应创建集合。

而(cur.hasNext()){/您可以在打印之前检查集合是否存在

db.collectionExists("coll_name")
如果不是,你可以创建它,或者确保一些索引-它会自动创建它
我通常在spring启动时执行此类操作(例如@PostConstruct)

我的感觉是您的数据库根本没有运行。您是否可以尝试使用“mongo”从命令行连接到数据库,并验证它是否已启动并运行

db.collectionExists("coll_name")