有没有办法让Java的Mongo客户端(版本2.13.2)在无法连接到服务器的情况下抛出异常?
我的代码中有一行,如下所示:
mongoClient = new MongoClient(new MongoClientURI("mongodb://localhost:27017"));
如果服务器关闭且连接失败,我喜欢抛出异常。
我在Stack Overflow和Mongo邮件列表中看到了其他答案,但所有这些答案似乎都试图使用MongoClient获取数据库并查看它是否抛出Exception
。如果可能的话,我非常希望避免这种情况。我不想获得数据库:我想测试连接性(他们不同的东西,通过尝试获取数据库进行测试似乎......很脏)
如果我尝试设置读取首选项(mongoClient.setReadPreference(ReadPreference.secondaryPreferred());
),我会在控制台中看到异常:
INFO [2016-01-29 16:56:43,847] org.mongodb.driver.cluster: Exception in
monitor thread while connecting to server localhost:27017
! java.net.ConnectException: Connection refused
但这甚至没有冒出来......它似乎在另一个进程或线程中失败或被抓住了?
提前谢谢