У меня нет опыта работы с базой данных, но я должен использовать его для приложения, которое я создаю, и я выбираю MongoDB.экземпляр объекта 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?