sql >> Databáze >  >> NoSQL >> MongoDB

Únik spojení Mongo s morfií

Můžete vytvořit singleton Datastore objekt

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;
}
}

a nyní můžete znovu použít stejné Datastore objekt ve vaší aplikaci

 Datastore datastore = MongoDBHelper.INSTANCE.getDatastore()



  1. Analýza dlouhého řetězce dotazu přímo do MongoDB (stejně jako v SQL)

  2. Import kolekce mongo do existující kolekce bez jejího přepsání

  3. Mnoho aktualizací Mongodb

  4. MongoDB filtrovat obsah pole objektů založený na členu objektu