Heim  >  Artikel  >  Web-Frontend  >  Bringen Sie Ihnen Schritt für Schritt bei, wie Sie mit Node eine Verbindung zu Mongodb herstellen

Bringen Sie Ihnen Schritt für Schritt bei, wie Sie mit Node eine Verbindung zu Mongodb herstellen

青灯夜游
青灯夜游nach vorne
2023-04-04 19:36:501967Durchsuche

Bringen Sie Ihnen Schritt für Schritt bei, wie Sie mit Node eine Verbindung zu Mongodb herstellen

Um Node.js zur Verbindung mit MongoDB zu verwenden, verwenden Sie normalerweise die Mongoose Object Document Model (ODM)-Bibliothek. Lassen Sie uns kurz vorstellen, wie Sie mit Mongoose eine Verbindung zu MongoDB herstellen.

Mongoose ist ein Node.js-Paket, das eine Schnittstelle für die Verwendung der Mongo-Datenbank bereitstellt. Es handelt sich um ein sehr leichtes NPM-Paket zur Verwendung in Anwendungen. Mongoose verfügt über alle Methoden, um in einer Mongo-Datenbank gespeicherte Daten zu verbinden und darauf zuzugreifen.

react-giant: Ein React+next.js+mongodb-Lernprojekt.

Installieren Sie die Mongoose-Bibliothek

Dies ist einer der notwendigen Schritte für die Node.js-Projektentwicklung. Geben Sie zur Installation den folgenden Befehl in das Terminal ein:

npm install mongoose --save

Mit MongoDB verbinden

Normalerweise müssen Sie bei Verwendung einer Datenbank zuerst eine Verbindung herstellen und die Verbindung mithilfe der folgenden Methoden herstellen:

const mongoose = require("mongoose");

const connectDb = async () => {
    await mongoose.connect("mongodb://localhost:27017/admin");
};

connectDb();

Im obigen Code wird die Funktion mongoose.connect() zum Herstellen verwendet eine Verbindung zu MongoDB. Der erste Parameter gibt die MongoDB-Verbindungs-URL im Format mongodb://f7e6dec31ab1a0471d06c55afaca8d77:298c9bd6ad6e8c821dc63aa0473d6209/6a1c441b3cb87988672d89ab255c6360?a436f88d8f7c0913a3ddc875cb14d4fa an, wobei &lt ;host> gibt den Hostnamen oder die IP-Adresse an, auf der sich MongoDB befindet, 298c9bd6ad6e8c821dc63aa0473d6209 gibt die Portnummer von MongoDB an, 6a1c441b3cb87988672d89ab255c6360 Gibt den Namen der verbundenen Datenbank an. a436f88d8f7c0913a3ddc875cb14d4fa sind einige Konfigurationselemente, die als Parameter übergeben werden, z. B. ?useNewUrlParser=true&useUnifiedTopology=true. Für Datenbanken, die zum Herstellen einer Verbindung einen Benutzernamen und ein Kennwort erfordern, lautet der Parametermodus f7e6dec31ab1a0471d06c55afaca8d77 username:password@127.0.0.1:27017. [Empfohlene verwandte Tutorials: nodejs-Video-Tutorialmongoose.connect() 函数用于建立到MongoDB的连接。第一个参数指定了MongoDB的连接URL,格式为 mongodb://f7e6dec31ab1a0471d06c55afaca8d77:298c9bd6ad6e8c821dc63aa0473d6209/6a1c441b3cb87988672d89ab255c6360?a436f88d8f7c0913a3ddc875cb14d4fa,其中f7e6dec31ab1a0471d06c55afaca8d77 指定MongoDB所在的主机名或IP地址,298c9bd6ad6e8c821dc63aa0473d6209指定MongoDB的端口号,6a1c441b3cb87988672d89ab255c6360 指定要连接的数据库的名称,a436f88d8f7c0913a3ddc875cb14d4fa是一些配置项,以参数的方式传递,如 ?useNewUrlParser=true&useUnifiedTopology=true。对于需要用户名和密码连接的数据库,则f7e6dec31ab1a0471d06c55afaca8d77参数方式为 username:password@127.0.0.1:27017。【相关教程推荐:nodejs视频教程编程教学

需要注意的是,mongoose 不同版本连接方式上有点区别,上述代码是在版本 7.0.2, Programmierunterricht

]

Es ist zu beachten, dass es einige Unterschiede in den Verbindungsmethoden verschiedener Versionen von Mungo gibt. Das Obige Der Code ist in der Version 7.0.2 und kann normal verwendet werden.

Modelle und Muster definieren

Bei der Verwendung von Mongoose müssen Sie normalerweise zuerst ein Modell und ein entsprechendes Muster definieren. Ein Modell bezieht sich auf eine Sammlung in MongoDB und ein Schema gibt die Struktur und Felder jedes Dokuments in der Sammlung an. Das Folgende ist ein einfaches Schemadefinitionsbeispiel:
const mongoose = require("mongoose");

const userSchema = new mongoose.Schema({
    username: {
        type: String,
        required: true,
    },
    email: {
        type: String,
        required: true,
        unique: true,
        maxlength: [255, "Email length must be at most 255"],
    },
    ip: {
        type: String,
        required: true,
    },
});

const User = mongoose.model("User", userSchema);

CRUD-Operationen

Nachdem Sie das Modell und das Schema definiert haben, können Sie das Modell verwenden, um CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) auszuführen. Im Folgenden finden Sie einige häufig verwendete Beispielcodes:

const mongoose = require("mongoose");

// 创建记录
async function createUsers() {
    const result = await User.create({
        username: "Quintion",
        email: "quintiontang@gmail.com",
        ip: "127.0.0.1",
    });
    return result;
}

// 查询文档列表
async function getUsers() {
    const users = await User.find();
    return users;
}

// 查询单个
async function getUser() {
    const user = await User.find({
        username: "Quintion",
    });
    return user;
}
// 删除记录
async function deleteUser() {
    return await User.remove({
        username: "Quintion",
    });
}
Der obige Code ist nur ein einfaches Beispiel. Wenn Sie einen vollständig ausführbaren Code benötigen, können Sie sich das folgende Projekt ansehen:

react-giant: a React+Next. js+ MongoDB-Lernprojekt.

Weitere Informationen zu Knoten finden Sie unter: 🎜nodejs-Tutorial🎜! 🎜

Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen Schritt für Schritt bei, wie Sie mit Node eine Verbindung zu Mongodb herstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen