MongoDB là một cơ sở dữ liệu hướng tài liệu (document), một dạng cơ sở dữ liệu NoSQL. Vì thế, MongoDB sẽ tránh cấu trúc dựa trên bảng của cơ sở dữ liệu quan hệ để thích ứng với các tài liệu như JSON có một lược đồ rất linh hoạt được gọi là BSON. MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi bộ sưu tập sẽ có kích thước và các tài liệu khác nhau. Dữ liệu được lưu trữ trong tài liệu dạng JSON nên truy vấn sẽ rất nhanh Show
Định nghĩa thêm về MongoDBMongoDB lần đầu ra đời bởi MongoDB Inc. , tại thời điểm đó là thế hệ 10, vào tháng Mười năm 2007, nó là một phần của sản phẩm PaaS (Nền tảng dưới dạng Dịch vụ) tương tự như Windows Azure và Google App Engine. Sau đó nó đã được chuyển thành nguồn mở từ năm 2009 MongoDB đã trở thành một trong những cơ sở dữ liệu NoSQL nổi trội nhất nhì, được sử dụng làm phụ trợ cho rất nhiều trang web như eBay, SourceForge và The New York Times Trong bài viết này, chúng ta sẽ xem xét việc tích hợp MongoDB, một cơ sở dữ liệu mã nguồn mở NoSQL rất phổ biến với một máy khách Java độc lập MongoDB được viết bằng C++ và có khá nhiều tính năng vững chắc như thu nhỏ bản đồ, tự động bảo vệ, sao chép, tính sẵn sàng cao, v.v. 2. MongoDBHãy bắt đầu với một vài điểm chính về bản thân MongoDB
Mô hình dữ liệu nêu trên cho chúng ta khả năng biểu diễn các mối quan hệ phân cấp, lưu trữ các mảng và các cấu trúc phức tạp khác một cách dễ dàng 3. thuật ngữViệc hiểu các khái niệm trong MongoDB trở nên dễ dàng hơn nếu chúng ta có thể so sánh chúng với các cấu trúc cơ sở dữ liệu quan hệ Hãy xem sự tương đồng giữa Mongo và hệ thống MySQL truyền thống
Tất nhiên, đây là một cách đơn giản để xem xét các khái niệm cốt lõi của MongoDB, nhưng vẫn hữu ích Bây giờ, hãy đi sâu vào triển khai để hiểu cơ sở dữ liệu mạnh mẽ này 4. Phụ thuộc MavenChúng ta cần bắt đầu bằng cách xác định sự phụ thuộc của Trình điều khiển Java cho MongoDB
Để kiểm tra xem có phiên bản mới nào của thư viện được phát hành hay không – hãy theo dõi các bản phát hành tại đây 5. Sử dụng MongoDBBây giờ, hãy bắt đầu triển khai các truy vấn Mongo với Java. Chúng tôi sẽ làm theo các thao tác CRUD cơ bản vì chúng là cách tốt nhất để bắt đầu 5. 1. Tạo kết nối với MongoClientTrước tiên, hãy tạo kết nối đến máy chủ MongoDB. Với phiên bản >= 2. 10. 0, chúng tôi sẽ sử dụng MongoClient
Và đối với các phiên bản cũ hơn, hãy sử dụng lớp Mongo
5. 2. Kết nối với cơ sở dữ liệuBây giờ, hãy kết nối với cơ sở dữ liệu của chúng tôi. Thật thú vị khi lưu ý rằng chúng ta không cần phải tạo một. Khi Mongo thấy cơ sở dữ liệu đó không tồn tại, nó sẽ tạo nó cho chúng ta
Đôi khi, theo mặc định, MongoDB chạy ở chế độ xác thực. Trong trường hợp đó, chúng tôi cần xác thực trong khi kết nối với cơ sở dữ liệu Chúng tôi có thể làm điều đó như trình bày dưới đây
5. 3. Hiển thị cơ sở dữ liệu hiện cóHãy hiển thị tất cả các cơ sở dữ liệu hiện có. Khi chúng ta muốn sử dụng dòng lệnh, cú pháp để hiển thị cơ sở dữ liệu tương tự như MySQL
Trong Java, chúng tôi hiển thị cơ sở dữ liệu bằng đoạn mã bên dưới
đầu ra sẽ là
Ở trên, local là cơ sở dữ liệu Mongo mặc định 5. 4. Tạo Bộ sưu tậpHãy bắt đầu bằng cách tạo một Bộ sưu tập (bảng tương đương với MongoDB) cho cơ sở dữ liệu của chúng ta. Khi chúng tôi đã kết nối với cơ sở dữ liệu của mình, chúng tôi có thể tạo Bộ sưu tập dưới dạng ________số 8Bây giờ, hãy hiển thị tất cả các bộ sưu tập hiện có cho cơ sở dữ liệu hiện tại
đầu ra sẽ là 05. 5. Lưu – ChènThao tác lưu có ngữ nghĩa lưu hoặc cập nhật. nếu có id, nó sẽ thực hiện cập nhật, nếu không - nó sẽ thực hiện thao tác chèn Khi chúng tôi cứu một khách hàng mới 1Thực thể sẽ được chèn vào cơ sở dữ liệu 2Tiếp theo, chúng ta sẽ xem xét thao tác tương tự - lưu - với ngữ nghĩa cập nhật 5. 6. Lưu – Cập nhậtBây giờ chúng ta hãy xem lưu với ngữ nghĩa cập nhật, hoạt động trên một khách hàng hiện tại 2Bây giờ, khi chúng tôi lưu khách hàng hiện tại – chúng tôi sẽ cập nhật nó 4Cơ sở dữ liệu sẽ trông như thế này 5Như bạn có thể thấy, trong ví dụ cụ thể này, lưu sử dụng ngữ nghĩa của cập nhật, bởi vì chúng tôi sử dụng đối tượng với _id đã cho 5. 7. Đọc một tài liệu từ một bộ sưu tậpHãy tìm kiếm Tài liệu trong Bộ sưu tập bằng cách thực hiện truy vấn 6Nó sẽ hiển thị Tài liệu duy nhất chúng tôi có trong Bộ sưu tập của chúng tôi 75. 8. Xóa một tài liệuHãy chuyển sang thao tác CRUD cuối cùng của chúng ta, xóa 8Với lệnh trên được thực thi, Tài liệu duy nhất của chúng tôi sẽ bị xóa khỏi Bộ sưu tập 6. Phần kết luậnBài viết này là phần giới thiệu nhanh về cách sử dụng MongoDB từ Java Việc triển khai tất cả các ví dụ và đoạn mã này có thể được tìm thấy trên GitHub – đây là một dự án dựa trên Maven, vì vậy sẽ dễ dàng nhập và chạy như hiện tại |