Code ví dụ Java MongoDB – Tạo database, collections, insert document

Code ví dụ Java MongoDB – Tạo database, collections, insert document.

(Xem lại: Code ví dụ Java kết nối MongoDB, xóa database trong MongoDB)

Cài đặt MongoDB JDBC Driver

Nếu bạn sử dụng maven thì thêm dependency sau:

<dependency>
  <groupId>org.mongodb</groupId>
  <artifactId>mongo-java-driver</artifactId>
  <version>3.8.0</version>
</dependency>

Hoặc download file jar: mongo-java-driver-3.8.0.jar

Code ví dụ

Ví dụ 1: Tạo database, collections

package stackjava.com.mongodb;

import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;

public class CreateCollections {
  public static void main(String[] args) {
    
    MongoClient mongoClient = new MongoClient("localhost", 27017);
    System.out.println("---------- list databases --------------------");
    for (String t : mongoClient.listDatabaseNames()) {
      System.out.println(t);
    }
    
    MongoDatabase mongoDatabase = mongoClient.getDatabase("demo1");
    mongoDatabase.createCollection("customer");

    System.out.println("---------- list databases after create demo1 ------------");
    for (String t : mongoClient.listDatabaseNames()) {
      System.out.println(t);
    }
    
    System.out.println("----------  collectors of database demo1 --------------------");
    for (String t: mongoDatabase.listCollectionNames()) {
      System.out.println(t);
    }
    mongoClient.close();
  }
}
  • Để tạo database ta dùng method getDatabase("database_name") , method này tương đương với lệnh use trong MongoDB, nếu database chưa tồn tại thì nó sẽ tạo 1 database mới và trả về đối tượng MongoDatabase tương ứng.
  • Method mongoDatabase.createCollection() được dùng để tạo collection cho đối tượng database đang làm việc

Demo:

admin
config
local
---------- list databases after create demo1 ------------
admin
config
demo1
local
----------  collectors of database demo1 --------------------
customer

Code ví dụ Java MongoDB - Tạo database, collections, insert document

Ví dụ 2: Insert, tạo mới document

package stackjava.com.mongodb;

import org.bson.Document;

import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;

public class InsertDocument {
  public static void main(String args[]) {

    MongoClient mongo = new MongoClient("localhost", 27017);

    MongoDatabase database = mongo.getDatabase("demo2");
    MongoCollection<Document> collection = database.getCollection("player");

    Document player = new Document()
        .append("id", 1)
        .append("name", "ronaldo")
        .append("country", "portugal")
        .append("age", 33);
    
    collection.insertOne(player);
    System.out.println("Inserted!");
    mongo.close();
  }
}

Trong ví dụ trên, cả database demo2 và collection player đều chưa tồn tại, nhưng khi thực hiện insert document vào collection player database demo2 và collection player sẽ tự động được tạo

Demo:

Inserted!

Insert, tạo mới document trong MongoDB

Trường hợp bạn muốn insert nhiều document cùng lúc thì dùng method collection.insertMany() với tham số đầu vào là 1 list Document

 

Okay, Done!

Download code ví dụ trên tại đây.

stackjava.com