نقل قول نوشته شده توسط hassanmosavi مشاهده تاپیک
من مودل استفادم فرق میکنه از مورفیا استفاده کردم

package framework;


import com.google.code.morphia.Datastore;
import com.google.code.morphia.Morphia;
import com.mongodb.Mongo;
import java.net.UnknownHostException;


public class MongoConnectionManager {


private static final MongoConnectionManager INSTANCE = new MongoConnectionManager();


private final Datastore ds;
private final Mongo mongo;
private final Morphia morphia = new Morphia();
public static final String DB_NAME = "Ordering";


public MongoConnectionManager() {
try {
mongo = new Mongo("localhost", 27017);
// mongo = new Mongo("localhost", 59482);
morphia.mapPackage("model");
ds = morphia.createDatastore(mongo, DB_NAME);
//t3
ds.ensureIndexes();
//test2
ds.ensureCaps();
} catch (UnknownHostException e) {
throw new RuntimeException("Error initializing mongo db", e);
}
}
public void close() {

mongo.close();
}



مثلا استفاده
 MongoConnectionManager conMongo = new MongoConnectionManager();
try {
OrderDao ordersDao = new OrderDaoImpl(Orders.class, conMongo.getDs());
DashboardManagment dashboard = (DashboardManagment) FacesContext.getCurrentInstance().getExternalConte xt().getSessionMap().get("dashboard");
ProvidersManagment ProviderM = (ProvidersManagment) FacesContext.getCurrentInstance().getExternalConte xt().getSessionMap().get("providerManager");


if (dashboard.getCurrentCustomer().getCustomerID() != null) {
this.addressList = ordersDao.getAddressOrders(dashboard.getCurrentCus tomer());


conMongo.close(); }
}
کلا هر جا کانکشن باز کردم بستم اما بازم وقتی برنامه اجرا میشه می بینی کانکشن باز مونده
حالا اگه بشه کلا کانکشن هارو بست یا یه کاری کرد خودشون خود بخود بسته بشن
خیلی خوب میشه



من به درایور Morphia آشنا نیستم ولی تحقیق کردم در هیچ مثال و توضیحی صحبتی از بستن کانکشن به میان نیامده است.حتی در مستندات اصلی مانگو دی بی برای Morphia هم مطرح شده که "آیا نیاز است که ارتباط بسته شود؟" که پاسخ داده شده که نیاز نیست.خود درایور همانطور که بهراد عزیز گفت Connection Pool برای هر نمونه یا Instance مانگو ساخته می شود.برای آزاد کردن منابع هم کافیه که از نمونه مانگو استفاده نشود و یا به احتمال زیاد نمونه یا Instance آزاد شود.منبع :
https://github.com/mongodb/morphia/w...AskedQuestions