【发布时间】:2012-02-06 03:39:02
【问题描述】:
我之前没有任何数据库经验,但我必须将它用于我正在构建的应用程序,我选择了 MongoDB。
现在一切正常,但每次我必须向数据库发出请求时,我都会创建一个新的 Mongo 对象,我知道这是错误的。
所以我想问问并了解正确的方法是什么,我在一个名为 MongoDbConnnection 的类中有如下代码:
public class MongoDbConnection {
private static Mongo _mongo;
public static Mongo getMongo()
{
if (_mongo == null) {
try {
_mongo = new Mongo();
} catch (UnknownHostException e) {
_mongo = null;
e.printStackTrace();
} catch (MongoException e) {
_mongo = null;
e.printStackTrace();
}
}
return _mongo;
}
}
所以每次我需要查询时,我都会输入Mongo m = MongoDbConnnection.getMongo(); 并继续前进。
这对吗?
我也对何时关闭连接感到困惑,因为我有另一个扩展 HttpServlet 的类并将响应 GET,每次有人请求该 url 时,我都必须查询数据库并返回信息。如果我在响应一个请求后立即关闭,如果其他人在此之后再次请求它怎么办。那我又要新建一个Mongo对象了?
换句话说,我知道 Mongo 实例维护一个连接轮询,所以当我调用 m.close() 时,我只是替换我使用的连接,还是将对象 m 设置为 null?
【问题讨论】:
标签: java mongodb mongodb-java database