Как хранить значения в базе данных MONGO с использованием JAVA? - PullRequest
1 голос
/ 30 ноября 2010

Я хочу сделать запись в блоге в своем веб-приложении. Изначально я использовал mysql в качестве БД. В котором я получу сообщение, введенное в текстовую область блога как объект в JS, и отправлю этот объект на серверную часть Java. Там я напишу запрос MySQL и получу объект в наборе результатов и сохраню в базе данных . Но теперь я хочу использовать mongoDB для того же. Я могу понять основные вещи через много уроков, которые я изучил. Но я не могу реализовать это в моем приложении. Я хочу знать, как объект , полученный из JS , будет отправлен внутри цикла и как я должен запросить сохранить объект также аналогично, если мне нужно отправить объект со стороны сервера в JS. Как я должен сделать .?

Код моего сервера:

    public DB MongoConnection(Blog blog) throws UnknownHostException, MongoException{
    Mongo m = new Mongo("localhost" , 27017); //mongo object
    DB db = m.getDB("myblog");
    System.out.println("Connected");
    //making a collection object which is table when compared to sql
    DBCollection items = db.getCollection("items"); 
    System.out.println("items got");

   //to work with document we need basicDbObject        
    BasicDBObject query = new BasicDBObject();
    System.out.println("Created mongoObject");

      //Cursor, which is like rs in sql
    DBCursor cursor = items.find();
    System.out.println("items got");
     while(cursor.hasNext()){
        System.out.println(cursor.next());
    } 

В вышеприведенном коде я все понял, например, как работает монго соединение, документы, коллекции и работа курсора. Теперь, как мне сохранить значение, поступающее как объект из JS, и сохранить в mongoDB. Любые предложения, пожалуйста?

1 Ответ

1 голос
/ 30 ноября 2010

Использовать метод сохранить класса DBCollection примерно так:

while(cursor.hasNext()){
    DBObject doc = cursor.next();

    doc.put("name", "Leo-vin");

    items.save(doc);
}

Метод cursor.next () возвращает объект типа DBObject. Это ваш BSONObject.

Обновление:

для изменения документа (BSON) используйте метод put класса BSONObject

...