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ệnhuse
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ượngMongoDatabase
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
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!
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.