Fechando a conexão Java do MongoDB
Estou tentando criar uma classe de conexão Mongo Db em que estou mantendo o MongoClient como estático.
private static MongoClient client = null;
public static DB connectToMongo() throws Exception {
if (null != client) {
return client.getDB(DBNAME);
}
client = new MongoClient(HOST,PORT);
return client.getDB(DBNAME);
}
Meu aplicativo Web inteiro usa o método acima para conectar-se ao Mongo da seguinte maneira:
db = MongoDBConnection.connectToMongo();
collection = db.getCollection("collectionName");
Depois de executar operações de banco de dados, nunca chamo a conexão estreita para o MongoClient. A classe de conexão sempre retornaria a mesma instância do MongoClient que, nunca é fechada. A única coisa que fecho são os cursores.
É necessário fechar o MongoClient toda vez que consultarmos o banco de dados? Meu projeto acima é válido?