Иногда приходится вздыхать от умиления, апгрейд системы действительно полезен, он не только дает мне возможность рефакторить предыдущий плохой код, но и удовлетворяет мое деятельное и усердное тщеславие. Посмотрите,Начало работы с Redis,Начало работы с ElasticsearchТеперь, на этот раз, я хочу снова начать работу с MongoDB.Я чувствую, что стал лысым и сильным одновременно.
Прежде чем читать дальше, друзья мои, я должен заявить, что я не проводил глубоких исследований MongoDB, просто потому, что я хочу ее использовать, я изучу ее. Но как ответственный технический блогер, я вложил в него душу, и после прочтения этого вводного урока мои друзья точно останутся довольны и не смогут не понравиться.
Конечно, когда друзья столкнутся с ошибками в статье, не будьте милосердны, вы можете сформировать группу, чтобы прийти и побить меня, но смотрите, чтобы вы не ударили себя по лицу, я боюсь обезображивания.
01. Что такое MongoDB
MongoDB — это распределенная база данных для хранения файлов, предназначенная для обеспечения масштабируемого высокопроизводительного решения для хранения данных для веб-приложений.
Приведенная выше цитата исходит от официального лица, и я должен сказать, что объяснение написано очень хорошо. Тогда позвольте мне объяснить моим друзьям обычным способом. MongoDB хранит данные в виде документа (аналогично объектам JSON), а структура данных состоит из пар ключ-значение, подобно Map в Java. правильно? Это также самая важная особенность MongoDB.
MongoDB предоставляет корпоративную версию (более мощную) и версию сообщества.Нашим разработчикам достаточно изучить и использовать версию сообщества. Существует множество пакетов драйверов для MongoDB, охватывающих распространенные языки программирования, такие как Java, JavaScript, C++, C#, Python и т. д.
MongoDB используют многие известные интернет-компании, такие как Google, Facebook, eBay и др. Одним словом, это надежно, друзья могут начать с уверенностью, а навыки не являются подавляющими, просто дайте себе возможность научиться.
02. Установите MongoDB
MongoDB имеет разные установочные пакеты для разных операционных систем.Давайте возьмем Windows в качестве примера для этой вводной статьи.
Официальный адрес загрузки сайта выглядит следующим образом:
Woohoo. MongoDB.com/download-testing…
Последняя версия 4.2.6, я выбрал установочную версию, в формате msi, около 264М. После скачивания можно двойным щелчком запускать установку, глупо.
Рекомендуется выбрать «Пользовательский», чтобы настроить установку, как показано на следующем рисунке.
Запустите в сервисном режиме и настройте каталоги данных и журналов, как показано на следующем рисунке.
Рекомендуется снять флажок для установки графического клиентского инструмента MongoDB, иначе скорость установки будет настолько низкой, что вы захотите вычесть телефон.
После завершения установки перейдите в каталог bin и дважды щелкните файл mongo.exe, чтобы подключиться к службе MongoDB.
1) Номер порта MongoDB по умолчанию — 27017.
2) Номер версии MongoDB — 4.2.6.
По умолчанию он будет подключаться к тестовому документу (эквивалентному данным), который можно запросить с помощью команды db.
Вы также можете выполнить несколько простых арифметических операций:
Итак, как остановить службу? Вы можете напрямую щелкнуть число X в правом верхнем углу — грубо, стена.
03. Установите Робо 3Т
Robo 3T обеспечивает поддержку MongoDB и SCRAM-SHA-256 (обновленная оболочка mongo) и представляет собой облегченный клиентский инструмент MongoDB.
Адрес загрузки следующий:
Последняя версия 1.3, выберите формат zip для загрузки, около 23M. После завершения загрузки разархивируйте его.
Каталог пакетов не будет объясняться по одному.Войдите в каталог bin, дважды щелкните, чтобы запустить файл robo3t.exe, и запустите клиент Robo 3T.
Нажмите «Создать», чтобы создать соединение MongoDB.
После успешного подключения вы можете работать с MongoDB.
(Однако мои друзья не знают, как работать в настоящее время. В конце концов, некоторые связанные концепции MongoDB все еще неясны, поэтому нет возможности начать.)
04. Связанные концепции MongoDB
С быстрым развитием Интернета пользовательские данные также становятся все больше и больше, и разработка баз данных NoSQL может хорошо обрабатывать эти большие данные.MongoDB является типичным представителем баз данных NoSQL.
Говоря об этом, некоторые друзья могут не знать, что означает NoSQL, позвольте мне кратко объяснить. NoSQL не означает отсутствие SQL, его фактическое значение — Not Only SQL, что означает «больше, чем просто SQL», что относится к нереляционной базе данных, которая отличается от традиционных реляционных баз данных, таких как MySQL и Oracle.
MongoDB названа в честь английского слова hu.mongous, что означает «гигант», показывает амбиции MongoDB. Данные MongoDB хранятся в виде двоичных документов в формате, подобном JSON:
{
name: "沉默王二",
age: 18,
hobbies: ["写作", "敲代码"]
}
Прежде чем перейти к следующему шагу, вам необходимо понять несколько ключевых понятий MongoDB, например, что такое коллекция, что такое документ, что такое поле и так далее. Хотя MongoDB является нереляционной базой данных, она очень похожа на реляционную базу данных.
После прочтения приведенной выше картинки (картинка взята из статьи моего хорошего друга макроженга) сразу понятно?
05. Использование MongoDB в Java
Некоторые друзья могут спросить: «Второй брат, я программист Java, как я могу использовать MongoDB в Java?» Этот вопрос хорошо задан, вот он, вот он.
Первый шаг — добавить в проект зависимость драйвера MongoDB:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>4.0.3</version>
</dependency>
Второй шаг — создать новый тестовый класс MongoDBTest:
public class MongoDBTest {
public static void main(String[] args) {
MongoClient mongoClient = MongoClients.create();
MongoDatabase database = mongoClient.getDatabase("mydb");
MongoCollection<Document> collection = database.getCollection("test");
Document doc = new Document("name", "沉默王二")
.append("age", "18")
.append("hobbies", Arrays.asList("写作", "敲代码"));
collection.insertOne(doc);
System.out.println("集合大小:" +collection.countDocuments());
Document myDoc = collection.find().first();
System.out.println("文档内容:" + myDoc.toJson());
}
}
1) Объект подключения клиента, предоставленный MongoClient для MongoDB.Если имя хоста и номер порта не указаны, по умолчанию используется «localhost» и «27017».
Если вы хотите настроить имя хоста и номер порта, вы также можете передать его в виде строки:
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
Похоже ли это на строку подключения MySQL?
2)getDatabase()
Метод используется для получения базы данных с указанным именем, если база данных уже существует, он вернет напрямую объект БД (MongoDatabase), в противном случае создаст его и вернет (операция определения нуля опущена, что очень неудобно -дружелюбно).
3)getCollection()
Метод используется для получения объекта документа с указанным именем.Если документ уже существует, он напрямую возвращает объект коллекции документа, в противном случае он создает новый и возвращает (иgetDatabase()
метод аналогичен).
С помощью объекта документа (MongoCollection) вы можете добавить к нему определенное содержимое документа.
Document doc = new Document("name", "沉默王二")
.append("age", "18")
.append("hobbies", Arrays.asList("写作", "敲代码"));
Объект Document поступает из пакета org.bson и может быть передан после создания экземпляра объекта.append()
Метод добавляет соответствующую пару ключ-значение, что очень удобно, как и класс Stringappend()
Так же.
Получив объект документа, вы можете передатьinsertOne()
способ добавления документа в коллекцию.
4)countDocuments()
метод для получения количества документов в коллекции.
5) Чтобы запросить документ, вы можете пройтиfind()
метод, который возвращаетFindIterable
объект,first()
Метод возвращает первый объект документа в текущей коллекции.
Хорошо, давайте посмотрим на вывод программы:
集合大小:1
文档内容:{"_id": {"$oid": "5ebcaa76465cab3f18b93e1a"}, "name": "沉默王二", "age": "18", "hobbies": ["写作", "敲代码"]}
Именно то, что мы ожидали, идеально!
Вы также можете просмотреть базу данных «mydb» через Robo 3T, и результат показан на следующем рисунке.
06. Спасибо
Ну что же, мои дорогие друзья, на этом и закончилось содержание этой статьи. Вы действительно хотите попрактиковаться в MongoDB после прочтения? Спешите и действуйте! Если у вас возникнут проблемы в процессе обучения, пожалуйста, не стесняйтесь общаться со мной.Хотя я тоже новичок, я полон энтузиазма.
Кроме того, если вы хотите писать статьи на уровне ворот, это лучший пример.
Я Silent King Er, интересный программист. Если вы считаете, что статья полезна для вас, пожалуйста, выполните поиск по запросу "Тихий король 2"Прочтите это в первый раз, ответьте [666] Есть также обучающие видео высокой четкости 500G (по категориям), которые я тщательно подготовил для вас.
эта статьяGitHubОн был включен, и есть полные тестовые площадки для интервью на крупных заводах Добро пожаловать в Star.
Оригинальность непроста, не просите пустой билет, пожалуйста, поставьте лайк этой статье, что будет моей сильнейшей мотивацией писать больше качественных статей.