Hướng dẫn using mongodb with java - sử dụng mongodb với java
Nhóm phát triển của chúng tôi vừa ra mắt website langlearning.net học tiếng Anh, Nga, Đức, Pháp, Việt, Trung, Hàn, Nhật, ... miễn phí cho tất cả mọi người. Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất. Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi. Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất. Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi. Show
Sử dụng $inc trong trường hợp bạn muốn tăng giá trị cho một cột nào đó. Chẳng hạn tìm các City và update cột population (dân số) lên 10000.Kết quả Update: MongoDB:
9.5- Update nhiều tài liệu (multi) rất linh hoạt, Bạn kết nối vào một Database hoặc Collection mà không nhất thiết rằng nó tồn tại, nó sẽ được tự động tạo ra khi bạn có một thao tác nào đó. Điều này sẽ được giải thích trong các ví dụ liên quan của tài liệu này. Sử dụng method:10- Delete Document query, insert, update và delete dữ liệu.
Khái niệm Collection trong MongoDB nó tương ứng với khái niệm Table (bảng) trong cơ sở dữ liệu quan hệ.cung cấp lớp DBObject để mô tả một cấu trúc dữ liệu JSON, và nó mô tả một điều kiện. Khái niệm Document trong MongoDB nó tương ứng với khái niệm Record (bản ghi) trong cơ sở dữ liệu quan hệ. MongoDB rất linh hoạt, Bạn kết nối vào một Database hoặc Collection mà không nhất thiết rằng nó tồn tại, nó sẽ được tự động tạo ra khi bạn có một thao tác nào đó. Điều này sẽ được giải thích trong các ví dụ liên quan của tài liệu này. first_name = "John" và last_name = "Smith", JSON trong trường hợp này sẽ là: 2- Vấn đề trọng tâm ID phòng ban là 10 và mã nhân viên là "E01" hoặc "E02", cấu trúc JSON bạn cần viết sẽ là: Khi bạn làm việc với một cơ sở dữ liệu, câu hỏi của bạn luôn là làm thế nào tôi có thể query, insert, update và delete dữ liệu.MongoDB không có khái niệm Join (kết nối) giữa 2 Collection với nhau, mọi việc truy vấn đều thực hiện trên một Collection. Và như vậy bạn chẳng cần phải học làm thế nào để Join 2 Collection, mọi thứ chỉ còn là viết điều kiện where cho một Collection. Cụ thể là: Java API tạo ra DBObject mô tả một điều kiện cho câu lệnh Query. Java cung cấp cho bạn một số lớp:
Viết điều kiện để xóa các Document trên một Collection.DBObject.
Sử dụng $inc trong trường hợp bạn muốn tăng giá trị cho một cột nào đó. Chẳng hạn tìm các City và update cột population (dân số) lên 10000.Kết quả Update:
9.4- Ví dụ Update với $set và $inc
Sử dụng method: 10- Delete DocumentTODO pom.xml
1- Một số khái niệm của MongoDBTrước hết chúng ta cần hiểu một số khái niệm trong MongoDB: MongoDB của bạn đã sẵn sàng chạy.
MyConstants.java
Khái niệm Document trong MongoDB nó tương ứng với khái niệm Record (bản ghi) trong cơ sở dữ liệu quan hệ.MongoUtils với các method tiện ích để kết nối vào Database MongoDB. Trong thực hành bạn có thể thay đổi các thông số HOST, PORT, .. cho phù hợp với trường hợp của mình. MongoUtils.java MongoDB rất linh hoạt, Bạn kết nối vào một Database hoặc Collection mà không nhất thiết rằng nó tồn tại, nó sẽ được tự động tạo ra khi bạn có một thao tác nào đó. Điều này sẽ được giải thích trong các ví dụ liên quan của tài liệu này.2- Vấn đề trọng tâm MongoUtils để test kết nối: Khi bạn làm việc với một cơ sở dữ liệu, câu hỏi của bạn luôn là làm thế nào tôi có thể query, insert, update và delete dữ liệu.MongoDB không có khái niệm Join (kết nối) giữa 2 Collection với nhau, mọi việc truy vấn đều thực hiện trên một Collection. Và như vậy bạn chẳng cần phải học làm thế nào để Join 2 Collection, mọi thứ chỉ còn là viết điều kiện where cho một Collection. Cụ thể là:Viết điều kiện để truy vấn dữ liệu trên một Collection.rất linh hoạt, nếu bạn muốn trèn một bản ghi (Document) vào một Collection. Nếu Collection này không tồn tại nó sẽ tự động được tạo ra, sau đó các bản ghi được trèn vào. Trong ví dụ này chúng ta sẽ trèn 4 document vào Collection Department. Trong MongoDB cột _id chính là khóa chính (Primary Key), trong trường hợp bạn trèn vào một tài liệu (Document), mà không chỉ định rõ khóa chính, cột _id vẫn sẽ được tạo ra, với giá trị là một chuỗi ngẫu nhiên 36 ký tự. Department. Trong MongoDB cột _id chính là khóa chính (Primary Key), trong trường hợp bạn trèn vào một tài liệu (Document), mà không chỉ định rõ khóa chính, cột _id vẫn sẽ được tạo ra, với giá trị là một chuỗi ngẫu nhiên 36 ký tự.
InsertDemo.java
Chạy class InsertDemo.java và xem kết quả trên RoboMongo (Công cụ trực quan quản lý MongoDB). InsertDemo.java và xem kết quả trên RoboMongo (Công cụ trực quan quản lý MongoDB). Nếu database không tồn tại, nó sẽ được tạo ra. Nếu Collection chưa tồn tại nó cũng tự động được tạo ra. Đó chính là sự khác biệt của MongoDB với các loại Database quan hệ khác (Oracle, MySQL, SQLServer...) Collection chưa tồn tại nó cũng tự động được tạo ra. Đó chính là sự khác biệt của MongoDB với các loại Database quan hệ khác (Oracle, MySQL, SQLServer...) 7- CollectionKhái niệm Collection trong MongoDB nó tương ứng với khái niệm Table (bảng) trong cơ sở dữ liệu quan hệ. Chúng ta xem một ví dụ lấy ra danh sách các Collection trong database: Collection trong MongoDB nó tương ứng với khái niệm Table (bảng) trong cơ sở dữ liệu quan hệ. Chúng ta xem một ví dụ lấy ra danh sách các Collection trong database: GettingCollectionDemo.java
Kết quả chạy ví dụ: 8- Query Collection8.1- Điều kiện truy vấn trong MongoDBHãy xem một vài trường hợp thiết lập điều kiện where (Đây là kiến thức thuần thúy của MongoDB) MongoDB) 8.1.1- Các toán tử so sánh trong MongoDB
8.2- Java API cho truy vấn dữ liệu
8.3- Ví dụ truy vấn đơn giảnVí dụ này chúng ta sẽ Query vào Collection Department lấy ra các Document. Department lấy ra các Document. SimpleQueryDemo.java
Kết quả chạy ví dụ:
8- Query Collection8.1- Điều kiện truy vấn trong MongoDB DBObject bạn có thể sử dụng BasicDBObjectBuilder ví dụ:
Hãy xem một vài trường hợp thiết lập điều kiện where (Đây là kiến thức thuần thúy của MongoDB) Department, tìm các phòng ban có dept_name = 'ACCOUNTING'. QueryWithParamsDemo1.java 0Kết quả chạy ví dụ: 8- Query Collection8.1- Điều kiện truy vấn trong MongoDB BasicDBObjectBuilder. Bạn có thể dễ dàng biết sử dụng của nó theo hình minh họa dưới đây:
8.1.1- Các toán tử so sánh trong MongoDB 1Kết quả chạy ví dụ: 8- Query CollectionQueryWithParamsDemo3.java 2Kết quả chạy ví dụ: 8- Query Collection8.1- Điều kiện truy vấn trong MongoDB CreateDataForUpdate dưới đây để có dữ liệu. CreateDataForUpdate.java 3Hãy xem một vài trường hợp thiết lập điều kiện where (Đây là kiến thức thuần thúy của MongoDB) City đã được tạo ra với 3 Document (Xem trên công cụ trực quan RoboMongo). 8.1.1- Các toán tử so sánh trong MongoDBUpdateDemo.java 4$gt Khớp với các giá trị lớn hơn giá trị quy định trong truy vấn. (Greater than) $gte $set trong phần update. Hãy xem tiếp ví dụ tiếp theo. Khớp với các giá trị lớn hơn hoặc bằng giá trị quy định trong truy vấn. (Greater than or Equals)UpdateWithSetDemo.java 5$in Khớp với bất kỳ giá trị nào nằm trong một tập hợp cho trước. (In)$lt $inc trong trường hợp bạn muốn tăng giá trị cho một cột nào đó. Chẳng hạn tìm các City và update cột population (dân số) lên 10000. UpdateWithIncDemo.java 6Khớp với các giá trị nhỏ hơn giá trị quy định trong truy vấn. (Less than) $lteKhớp với các giá trị nhỏ hơn hoặc bằng giá trị quy định trong truy vấn. (Less than or Equals) 7$neKhớp với tất cả các giá trị khác với giá trị quy định trong truy vấn. (Not Equals) 8$nin
|