我试图运行以下代码:
public static void main(String args[]) throws UnknownHostException, MongoException{ Mongo m = new Mongo( "localhost", 27017 ); DB db = m.getDB( "test" ); Setcoll = db.getCollectionNames(); }
但由于某种原因,我遇到连接问题:
bc:java.net.ConnectException:连接被拒绝:连接
编辑:Nvm我忘了在后台运行数据库
显然,请确保您可以在"localhost"端口27017上连接到MongoDB.您应该能够打开没有参数的MongoDB shell并获得提示:
» mongo MongoDB shell version: 1.8.1 connecting to: test >
如果你不能答案显而易见:MongoDB没有运行.您需要确保启动MongoDB服务器进程.MongoDB文档中有一些快速入门指南,可以指导您选择所需平台的过程.
否则,您没有指出您所使用的平台,但是Java在Mac OS X上解析某些主机名如"localhost"存在问题......这实际上是一个Java问题而不是MongoDB Java驱动程序问题.
当要求将"localhost"从主机名解析为a时InetSocketAddr
,Java for Mac通常会返回计算机外部接口的IP .由于像Homebrew这样的Mac MongoDB的一些安装程序将侦听IP地址锁定为127.0.0.1,这可能导致连接到"localhost"在使用Java的Mac上完全失败.