MongoDb и morphia пароль и имя пользователя - PullRequest
1 голос
/ 20 октября 2011

играет с этим и не может получить контроль
о том, как связаться с паролем.

В MongoDb это довольно легко понять, но когда я использую morphia, это не
настолько очевидно, потому что документация минимальна, или я пропустил это.

У меня уже есть Коллекция с 5 документами.
Могу ли я применить пользователя / передать на это?

Как я могу изменить этот код, чтобы при ведении журнала использовались имя пользователя и пароль?

Взял код из этого поста (Спасибо @Lennart Koopmann)
Учебник по Java-драйверу MongoDB

public final class MongoConnectionManager {

 private static final MongoConnectionManager
 INSTANCE = new MongoConnectionManager();
 private final Datastore db;
 public static final String DB_NAME = "mongo_database";

 private MongoConnectionManager() {
            try {
                Mongo m = new Mongo("localhost", 27017);
            db = new Morphia().map(UserData.class)
     .map(Statistic.class)
     .map(FriendList.class)
     .map(ServerData.class)
     .map(BatchData.class).createDatastore(m, DB_NAME);

                db.ensureIndexes();
            }
            catch (Exception e) {
                throw new RuntimeException("Error initializing mongo db", e);
            }
        }

        public static MongoConnectionManager instance() {
            return INSTANCE;
        }

        public Datastore getDb() {

            return db;
        }   
    }

Ответы [ 2 ]

8 голосов
/ 17 июля 2015

возможно, вы могли бы использовать следующий код:

Morphia morphia = new Morphia();
ServerAddress addr = new ServerAddress("host", 27017);
List<MongoCredential> credentialsList = new ArrayList<MongoCredential>();
MongoCredential credentia = MongoCredential.createCredential(
    "username", "dbname", "password".toCharArray());
credentialsList.add(credentia);
MongoClient client = new MongoClient(addr, credentialsList);
datastore = morphia.createDatastore(client, "dbname");
2 голосов
/ 20 октября 2011
createDatastore(m, DB_NAME, username, password)

Этот перегруженный метод был введен здесь .

Может быть, вы используете старый клиент Moprhia?

...