Hướng dẫn mongodb

Trước hết chúng ta cần gọi một số trong những định nghĩa trong MongoDB:Khái niệm Collection vào MongoDB nó khớp ứng cùng với quan niệm Table (bảng) vào đại lý dữ liệu quan hệ giới tính.Khái niệm Document vào MongoDB nó tương xứng với quan niệm Record (phiên bản ghi) trong đại lý tài liệu quan hệ tình dục.

Bạn đang xem: Hướng dẫn mongodb


MongoDB rất linh hoạt, quý khách hàng kết nối vào một Database hoặc Collection cơ mà không độc nhất vô nhị thiết rằng nó trường tồn, nó sẽ được auto tạo ra khi bạn gồm một làm việc nào đó. Vấn đề này sẽ được lý giải trong các ví dụ tương quan của tư liệu này.
Khi các bạn thao tác làm việc với 1 đại lý dữ liệu, thắc mắc của chúng ta luôn luôn là làm cho cầm làm sao tôi có thể query, insert, update delete tài liệu.MongoDB không tồn tại có mang Join (kết nối) giữa 2 Collection cùng nhau, đa số việc truy vấn vấn hầu như thực hiện trên một Collection. Và như thế chúng ta chẳng cần được học có tác dụng chũm nào nhằm Join 2 Collection, đều đồ vật chỉ từ là viết điều kiện where cho một Collection. Cụ thể là:
Viết điều kiện để truy tìm vấn tài liệu bên trên một Collection.Viết điều kiện để cập nhập tài liệu trên một Collection.Viết điều kiện nhằm xóa những Document trên một Collection.

Xem thêm: Hướng Dẫn Chỉnh Sửa Video Trên Máy Tính, Pc Không Cần Cài Đặt Phần Mềm


Tìm kiếm những nhân viên cấp dưới tất cả first_name = "John"last_name = "Smith", JSON vào ngôi trường phù hợp này sẽ là:
*

Tìm những nhân viên cấp dưới tất cả ID ban ngành là 10 với mã nhân viên cấp dưới là "E01" hoặc "E02", cấu tạo JSON bạn cần viết đã là:
*

quý khách rất cần phải học bí quyết nhưng Java API tạo nên DBObject bộc lộ một điều kiện mang đến câu lệnh Query. Java cung cấp cho chính mình một số trong những lớp:
*

*

*

package org.o7planning.tutorial.mongodb;public class MyConstants // cũng có thể Database này sẽ không mãi sau trên MongoDB của doanh nghiệp. // Nhưng nó sẽ tiến hành tự động hóa tạo thành. // (Quý khách hàng không cần phải đổi khác trường này). public static final String DB_NAME ="MyStudyDB";
Class MongoUtils cùng với những method tiện ích để kết nối vào Database MongoDB. Trong thực hành chúng ta có thể biến hóa các thông số HOST, PORT, .. mang đến tương xứng với ngôi trường đúng theo của chính bản thân mình.
package org.o7planning.tutorial.mongodb;import java.net.UnknownHostException;import java.util.Arrays;import java.util.List;import com.mongodb.MongoClient;import com.mongodb.MongoCredential;import com.mongodb.ServerAddress;public class MongoUtils private static final String HOST = "localhost"; private static final int PORT = 27017; // private static final String USERNAME = "mgdb"; private static final String PASSWORD = "1234"; // Cách kết nối vào MongoDB ko buộc phải bảo mật thông tin. private static MongoClient getMongoClient_1() throws UnknownHostException MongoClient mongoClient = new MongoClient(HOST, PORT); return mongoClient; // Cách kết nối vào DB MongoDB bao gồm bảo mật. private static MongoClient getMongoClient_2() throws UnknownHostException MongoCredential credential = MongoCredential.createMongoCRCredential( USERNAME, MyConstants.DB_NAME, PASSWORD.toCharArray()); MongoClient mongoClient = new MongoClient( new ServerAddress(HOST, PORT), Arrays.asList(credential)); return mongoClient; public static MongoClient getMongoClient() throws UnknownHostException // Kết nối vào MongoDB không bắt buộc bảo mật. return getMongoClient_1(); // quý khách hoàn toàn có thể thay thế do getMongoClient_2() // vào trường hợp liên kết vào MongoDB gồm bảo mật. private static void ping() throws UnknownHostException MongoClient mongoClient = getMongoClient(); System.out.println("List all DB:"); // Danh sách các DB Names. List dbNames = mongoClient.getDatabaseNames(); for (String dbName : dbNames) System.out.println("+ DB Name: " + dbName); System.out.println("Done!"); // Test public static void main(String<> args) throws UnknownHostException ping();
MongoDB rất linh thiêng hoạt, trường hợp bạn muốn trèn một bản ghi (Document) vào một trong những Collection. Nếu Collection này không lâu dài nó vẫn tự động được tạo thành, kế tiếp các bản ghi được trèn vào.

Xem thêm: Hướng Dẫn Đi Máy Bay Lần Đầu, Thủ Tục Đi Máy Bay Nội Địa Cho Người Đi Lần Đầu


Trong ví dụ này chúng ta đã trèn 4 document vào Collection Department. Trong MongoDB cột _id đó là khóa chủ yếu (Primary Key), vào trường vừa lòng bạn trèn vào trong 1 tư liệu (Document), mà không chỉ là định rõ khóa chủ yếu, cột _id vẫn sẽ được tạo nên, với giá trị là một trong những chuỗi hốt nhiên 36 ký tự.
"_id" : 10 ,"dept_no" : "D10" ,"dept_name" : "ACCOUNTING" ,"location" : "NEW YORK""_id" : trăng tròn ,"dept_no" : "D20" ,"dept_name" : "RESEARCH" ,"location" : "DALLAS" ,"description" : "First department""_id" : 30 ,"dept_no" : "D30" ,"dept_name" : "SALES" ,"location" : "CHICAGO""_id" : 40 ,"dept_no" : "D40" ,"dept_name" : "OPERATIONS" ,"location" : "BOSTON"
package org.o7planning.tutorial.mongodb.insert;import java.net.UnknownHostException;import org.o7planning.tutorial.mongodb.MongoUtils;import org.o7planning.tutorial.mongodb.MyConstants;import com.mongodb.BasicDBObject;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.MongoClient;public class InsertDemo public static void main(String args<>) throws UnknownHostException // Kết nối tới MongoDB. MongoClient mongoClient = MongoUtils.getMongoClient(); // Kết nối tới Database // (Không độc nhất vô nhị thiết DB này yêu cầu vĩnh cửu sẵn // nó sẽ tiến hành auto tạo ra nếu không tồn tại). DB db = mongoClient.getDB(MyConstants.DB_NAME); // Lấy ra Collection cùng với tên Department. // Không duy nhất thiết Collection này buộc phải lâu dài trong DB. DBCollection dept = db.getCollection("Department"); // Insert Document 1 BasicDBObject doc1 = new BasicDBObject(); doc1.append("_id", 10); doc1.append("dept_no", "D10"); doc1.append("dept_name", "ACCOUNTING"); doc1.append("location", "NEW YORK"); dept.insert(doc1); // Insert Document 2 BasicDBObject doc2 = new BasicDBObject(); doc2.append("_id", 20); doc2.append("dept_no", "D20"); doc2.append("dept_name", "RESEARCH"); doc2.append("location", "DALLAS"); doc2.append("description", "First department"); dept.insert(doc2); // Insert Document 3 BasicDBObject doc3 = new BasicDBObject(); doc3.append("_id", 30); doc3.append("dept_no", "D30"); doc3.append("dept_name", "SALES"); doc3.append("location", "CHICAGO"); dept.insert(doc3); // Insert Document 4 BasicDBObject doc4 = new BasicDBObject(); doc4.append("_id", 40); doc4.append("dept_no", "D40"); doc4.append("dept_name", "OPERATIONS"); doc4.append("location", "BOSTON"); dept.insert(doc4); System.out.println("Done!");
Nếu database không trường tồn, nó sẽ tiến hành tạo thành. Nếu Collection chưa có nó cũng auto được tạo nên. Đó đó là sự biệt lập của MongoDB với những các loại Database quan hệ giới tính không giống (Oracle, MySQL, SQLServer...)
Khái niệm Collection trong MongoDB nó tương xứng với quan niệm Table (bảng) trong cơ sở tài liệu quan hệ nam nữ. Chúng ta coi một ví dụ lấy ra list những Collection vào database:
package org.o7planning.tutorial.mongodb.collection;import java.net.UnknownHostException;import java.util.List;import java.util.Set;import org.o7planning.tutorial.mongodb.MongoUtils;import org.o7planning.tutorial.mongodb.MyConstants;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.MongoClient;public class GettingCollectionDemo public static void main(String<> args) throws UnknownHostException MongoClient mongoClient = MongoUtils.getMongoClient(); DB db = mongoClient.getDB(MyConstants.DB_NAME); // Collection trong MongoDB tương tự cùng với Table vào // đại lý tài liệu tình dục (Oracle, MySquốc lộ,SQLServer,..) DBCollection dept = db.getCollection("Department"); System.out.println("Collection: "+ dept); // Số Document. // Chú ý: Document vào MongoDB tương xứng với cùng một chiếc // dữ liệu trong các đại lý tài liệu tình dục. long rowCount = dept.count(); System.out.println(" Document count: "+ rowCount); System.out.println(" ------------ "); // Danh sách tất cả Các Collection. Set collections = db.getCollectionNames(); for(String coll: collections) System.out.println("Collection: "+ coll);

Chuyên mục: Kiến thức