Heim >Web-Frontend >js-Tutorial >Node.js stellt eine Verbindung zur MongoDB-Datenbank her, um schnell Ihren eigenen Webservice_node.js zu erstellen

Node.js stellt eine Verbindung zur MongoDB-Datenbank her, um schnell Ihren eigenen Webservice_node.js zu erstellen

WBOY
WBOYOriginal
2016-05-16 15:05:051874Durchsuche

1. Schreiben Sie vorne

Jeder möchte ein Full-Stack-Entwickler sein, der einfache Weg zum Full-Stack scheint node.js zu sein. Ich habe vor einiger Zeit node.js kennengelernt und lass uns darüber sprechen, wie Anfänger schnell ihre eigenen Webdienste erstellen und die Full-Stack-Reise beginnen können.

2. Installieren Sie node.js

Jeder, der mit der Backend-Entwicklung vertraut ist, weiß, dass der Dienst zuerst installiert werden muss. Als Anfänger müssen Sie über die offizielle Website http://nodejs.org/ die einfachste visuelle Installation auswählen (der nächste Schritt ist narrensicher, andere Methoden ergeben sich von selbst, nachdem Sie mit den relevanten Vorgängen vertraut sind). dist/v0.6.1/node-v0.6.1.msi Laden Sie das an den Computer angepasste Installationspaket herunter (dies ist für Windows, ich kann mir keinen Mac leisten) und installieren Sie es dann standardmäßig. Es wird unter der Datei C:Program Filesnodejs installiert und dieses Verzeichnis zur Umgebungsvariablen PATH hinzugefügt. Klicken Sie dazu mit der rechten Maustaste auf „Arbeitsplatz“ – „Eigenschaften“ – „System Erweitert“ – „Erweitert“ – „Umgebungsvariablen“ – wählen Sie „Variablenname: PATH“; end Filesnodejs] (abhängig von Ihrem eigenen Installationsverzeichnis)". Öffnen Sie cmd und führen Sie den Befehl direkt aus:

node -v kann die aktuelle Versionsnummer ausgeben. npm wurde in die Knotendatei integriert und verwendet dann npm install XXX, um die erforderlichen Plug-Ins oder Module zu installieren.

3. Express-Framework verwenden

Nachdem ich eine Weile gearbeitet hatte, habe ich schließlich den Befehl npm verwendet, um das Express-Framework zu initialisieren, zu installieren und dann „Hallo Welt“ zu schreiben. Es fühlte sich großartig an. Warum sollten Sie sich für ein Express-Framework entscheiden? Natürlich hat es seine Besonderheiten. Die größte Angst für Anfänger ist, dass es mühsam ist und leicht Fehler macht. Selbstverständlich hat Express dies für uns berücksichtigt und stellt daher einen Schnellgenerator zur Verfügung: Express-Generator

1. Verwenden Sie den Befehl: npm install express-generator -g, um es global zu installieren

2. Verwenden Sie den Express-Befehl, um eine Projektstruktur zu generieren

drücken Sie myapp aus, wobei myapp Ihr ​​Projektname ist

3. Geben Sie die Projektdatei über cd myapp ein

Abhängige Module über npm install initialisieren

Starten Sie den Webserver über set DEBUG=myapp & npm start

4. Öffnen Sie die URL http://localhost:3000/ im Browser, um die Anwendung anzuzeigen.

Die standardmäßig verwendete Vorlagen-Engine ist Jade, und diese Vorlage wurde im Projekt konfiguriert.

4. Vorstellung des Express-Generator-Projekts

1. Die Organisation des myapp-Projekts ist wie folgt:

2. package.json Dies kann als Modulverwaltungspaket, Projektinformationen und Modulversionsnummer bezeichnet werden. Tatsächlich werden Sie feststellen, dass sie hier durch die Konfiguration generiert werden, wenn das Projektmodul initialisiert wird.

3. app.js ist die Startdatei des Projekts, die als Kern des Projekts bezeichnet werden kann. Schreiben Sie hauptsächlich einige öffentliche Funktionen.

4. Unter der Bin-Datei befindet sich eine WWW-Datei ohne Suffix. Dies ist die Eintragsdatei des Projekts und konfiguriert den Webdienst-Port und einige Überwachungsereignisse.

5. node_modules ist das Dateimodul, von dem das Projekt abhängt, und die später importierten Pakete werden ebenfalls darin platziert, z. B. das Mongoose-Modul, das eine Verbindung zur Datenbank herstellt, was später ausführlich besprochen wird.

6. Öffentlich ist der statische Ressourcendateisatz des Projekts. Es ist leicht zu erkennen, dass hier Bilder, CSS-Dateien und JS-Dateien platziert sind.

7. Routes ist das Routing-Modul des Projekts, in dem die Dateien index.js und user.js bereits voreingestellt sind. Tatsächlich umfasst dies auch den Controller-Inhalt in der allgemeinen Hintergrundsprache. Natürlich kann er in großen Projekten getrennt werden.

8. Ansichten sind die Vorlagendateien der Jade-Vorlagen-Engine. Diese Vorlage weist jedoch auch viele Fallstricke auf. Wenn es noch eine gibt Leerzeichen oder ein Leerzeichen weniger, ich bin auf viele Fallstricke gestoßen, tatsächlich ist die Leistung nicht sehr hoch, daher ist es besser, ejs zu verwenden.

5. Installieren Sie mongoDB

1. Laden Sie die MSI-Datei auch direkt auf der offiziellen Website herunter (http://www.mongodb.org/downloads)

2. Fahren Sie einfach mit dem nächsten Schritt fort, um zu installieren. Wenn es eine Auswahl gibt, wählen Sie alle aus

3. Konfigurieren Sie dann die Umgebungsvariablen, die mit denen des Knotens identisch sind und nicht noch einmal beschrieben werden, aber Sie können das mittlere Bild einfügen, hahaha ...

4. Der nächste Schritt besteht darin, den mongoDB-Dienst zu starten

5. Übergeben Sie den Befehl: mongod --dbpath f:MongoDBdata, wobei f:MongoDBdata der Dateispeicherpfad ist. Wenn Sie die folgenden Informationen sehen, bedeutet dies Erfolg

6. MongoDB lauscht auf Port 27017. Öffnen Sie gleichzeitig den Browser und geben Sie

http://127.0.0.1:27017 ein. Sie sehen die folgende Eingabeaufforderung:

 Es sieht so aus, als würden Sie versuchen, über HTTP über den nativen Treiberport auf MongoDB zuzugreifen.

7. Öffnen Sie dann ein cmd und geben Sie den Befehl mongo ein, um eine Verbindung zur Datenbank herzustellen. Die folgende Eingabeaufforderung wird angezeigt:

 2015-05-02T17:10:19.467+0800 I CONTROL Hotfix KB2731284 oder späteres Update ist nicht installiert, führt dazu, dass Datendateien gelöscht werden. MongoDB-Shell-Version: 3.0.2 verbindet sich mit: test

8. Auf diese Weise wird monogDB in der Windows-Umgebung erfolgreich installiert.

Ergänzung:

9. Wenn Sie Schwierigkeiten haben, den Dienst jedes Mal mit einem Befehl zu öffnen, können Sie eine Batchdatei schreiben, d. h. eine neue Datei mit der Endung .bat erstellen und den folgenden Code schreiben:

mongod starten --dbpath F:MongoDBdata

10. Natürlich können Sie MongoDB auch als Dienst starten, aber ich denke, es ist im Lernprozess nicht sehr nützlich. Wenn nötig, werde ich es später nachholen.

11. Wenn Sie die Verwendung der Befehlszeile schwierig finden, empfehle ich eine Software mit grafischer Oberfläche: MongoVUE, die Navicat ähnelt. Es gibt eine kostenlose Version, die weniger Funktionen bietet, aber zum Lernen ausreicht Prozess

6. Verwendung von monogDB in Knotenprojekten

1. Durch den Import des monogDB-Verbindungsmoduls werde ich nicht näher darauf eingehen.

2. Führen Sie den Befehl npm install mongoose -save unter dem myapp-Projekt aus, um die Installation in node_modules zu speichern. Sie können auch „mongoose“: „^4.4.12“ in package.json konfigurieren und dann den Befehl npm install zur Installation ausführen .

3. In der app.js-Datei

a. Importieren Sie das Mungo-Modul:

var mongoose = require('mongoose');
b. Datenbankverbindung erstellen

mongoose.connect('mongodb://localhost/myDB') //Mit lokaler Datenbank verbinden
4. Erstellen Sie ein neues Ordnerschema im Projektstammverzeichnis. Dies ist das Datensatzmodul. Erstellen Sie eine neue Datei „users.js“ unter dem Modul „
“.

var mongoose = require('mongoose');

//申明一个mongoons对象
var UsersSchema = new mongoose.Schema({
 name: String,
 paw: String,
 meta: { 
  createAt: {
   type: Date,
   default: Date.now()
  },
  updateAt: {
   type: Date,
   default: Date.now()
  }
 }
})

//每次执行都会调用,时间更新操作
UsersSchema.pre('save', function(next) {
 if(this.isNew) {
  this.meta.createAt = this.meta.updateAt = Date.now();
 }else {
  this.meta.updateAt = Date.now();
 }

 next();
})

//查询的静态方法
UsersSchema.statics = {
 fetch: function(cb) { //查询所有数据
  return this
   .find()
   .sort('meta.updateAt') //排序
   .exec(cb) //回调
 },
 findById: function(id, cb) { //根据id查询单条数据
  return this
   .findOne({_id: id})   
   .exec(cb)
 }
}

//暴露出去的方法
module.exports = UsersSchema 

5. Fügen Sie die Moduldatei im Stammverzeichnis hinzu. Dies ist das Datenmodellmodul. Fügen Sie die Datei „users.js“ unter dem Modul hinzu

 var mongoose = require('mongoose')
 var UsersSchema = require('../schemas/users') //拿到导出的数据集模块
 var Users = mongoose.model('Users', UsersSchema) // 编译生成Movie 模型
 
 module.exports = Users

6. Fügen Sie den Routing-Controller-Code zur Datei „users.js“ in der Routendatei hinzu


var express = require('express');
var mongoose = require('mongoose');//导入mongoose模块

var Users = require('../models/users');//导入模型数据模块

var router = express.Router();

/* GET users listing. */
router.get('/', function(req, res, next) {
 res.send('respond with a resource');
});

//查询所有用户数据
router.get('/users', function(req, res, next) {
 Users.fetch(function(err, users) {
  if(err) {
   console.log(err);
  }  
  res.render('users',{title: '用户列表', users: users}) //这里也可以json的格式直接返回数据res.json({data: users});
 })
})
module.exports = router;

7. Fügen Sie „users.jade“ unter der Ansichtendatei hinzu


extends layout

block content
 h1= title //jade取值方式
 ul
 each user in users //jade模版的遍历方式
  li
  h4 #{user.name} 
  span #{user.paw}


8. Öffnen Sie abschließend die URL im Browser:

http://localhost:3000/users/users, um den Effekt zu überprüfen. An diesem Punkt ist ein Projekt von der Datenbank bis zur Front-End-Anzeige abgeschlossen.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn