sql >> データベース >  >> NoSQL >> MongoDB

モルヒネによるMongo接続リーク

    singletonを作成できます Datastore オブジェクト

    public enum MongoDBHelper { // the best way to implement singletons, due to the author of Effective Java  
    INSTANCE;
    
    private DB db;
    private Datastore datastore;
    
    private final String SERVER_URL = "...";
    private final int SERVER_PORT = ...;
    private final String USERNAME= "...";
    private final String PASSWORD = "...";
    private final String DATABASE_NAME = "...";
    
    private MongoDBHelper() {
    
        try {
    
            MongoClient mongoClient = new MongoClient(SERVER_URL, SERVER_PORT);
    
            this.db = mongoClient.getDB(DATABASE_NAME);
            this.db.authenticate(USERNAME,PASSWORD.toCharArray());
    
            Morphia morphia = new Morphia();
    
            this.datastore = morphia.createDatastore(mongoClient, DATABASE_NAME);
    
            morphia.mapPackage("package");
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    
    }
    
    public DB getDB() {
        return this.db;
    }
    
    public Datastore getDatastore() {
        return this.datastore;
    }
    }
    

    これで、同じDatastoreを再利用できます アプリケーション内のオブジェクト

     Datastore datastore = MongoDBHelper.INSTANCE.getDatastore()
    



    1. マングーススキーマの継承

    2. WindowsでDockerMongoイメージを開始できません

    3. RealmとSwiftUIを使用して1週間でチャートトッピングアプリを作成する方法

    4. Spring Dataを使用して上限付きコレクションを作成するにはどうすればよいですか? -MongoDB