nodejs를 사용하여 mongodb의 채우기, 삭제, 수정 및 쿼리 모듈을 작동하는 방법

亚连
풀어 주다: 2018-06-14 11:25:07
원래의
1446명이 탐색했습니다.

아래에서는 mongodb를 운영하기 위한 nodejs의 채우기, 삭제, 수정 및 확인 모듈을 생성하고 소개하는 방법에 대한 예제를 공유하겠습니다. 좋은 참고 가치가 있으며 모든 분들께 도움이 되기를 바랍니다.

관련 모듈 설치

이를 사용하려면 먼저 필요한 모듈을 설치해야 합니다. 루트 디렉터리에

npm install mongodb --save
로그인 후 복사

를 입력하여 모듈을 설치하면 됩니다. 다음 단계.

파일 소개

다음은 제가 작성한 해당 코드를 해당 디렉토리에 넣어서 인용해두었습니다. 저는 express의 루트 디렉토리에 넣어두었습니다

function Mongo(options) {
 this.settings = {
  url: 'mongodb://localhost:27017/jk',
  MongoClient:require('mongodb').MongoClient,
  assert:require('assert')
 };
 for(let i in options){
  this.settings[i] = options[i];
 }
 this._run = function (fun) {
  let that = this;
  let settings = this.settings;
  this.settings.MongoClient.connect(this.settings.url, function (err, db) {
   settings.assert.equal(null, err);
   console.log("Connected correctly to server");
   fun(db, function () {
    db.close();
   });
  });
 };
 this.insert = function (collectionName, data, func) {
  //增加数据
  let insertDocuments = function (db, callback) {
   let collection = db.collection(collectionName);
   collection.insertMany([
    data
   ], function (err, result) {
    if (!err) {
     func(true);
    } else {
     func(false);
    }
    callback(result);
   });
  };
  this._run(insertDocuments);
 };
 this.update = function (collectionName, updateData, data, func) {
  //更新数据
  let updateDocument = function (db, callback) {
   let collection = db.collection(collectionName);
   collection.updateOne(updateData
    , {$set: data}, function (err, result) {
     if (!err) {
      func(true);
     } else {
      func(false);
     }
     callback(result);
    });
  };
  this._run(updateDocument);
 };
 this.delete = function (collectionName, data, func) {
  //删除数据
  let deleteDocument = function (db, callback) {
   let collection = db.collection(collectionName);
   collection.deleteOne(data, function (err, result) {
    if (!err) {
     func(true);
    } else {
     func(false);
    }
    callback(result);
   });
  };
  this._run(deleteDocument);
 };
 this.find = function (collectionName, data, func) {
  //查找数据
  let findDocuments = function (db, callback) {
   // Get the documents collection
   let collection = db.collection(collectionName);
   // Find some documents
   collection.find(data).toArray(function (err, docs) {
    if (!err) {
     func(true,docs);
    }
    else {
     func(false, err);
    }
    callback(docs);
   });
  };
  this._run(findDocuments);
 };
}
module.exports = Mongo;
로그인 후 복사

라는 파일로 저장했습니다. server.js

라는 이름으로

을 사용하는 경우 먼저 사용해야 하는 페이지에 모듈을 소개합니다. 예를 들어 라우팅 파일 index.js에 소개했습니다.

const Server = require("../server.js");
로그인 후 복사

그런 다음 다음과 같이 개체를 인스턴스화해야 합니다.

let server = new Server();
로그인 후 복사

필요한 경우 관련 정보를 구성하려면 인스턴스화할 때 개체 구성을 전달할 수 있으며 데이터베이스 주소를 구성할 수 있습니다.

let server = new Server({url:"mongodb://localhost:27017/mydb"});
로그인 후 복사

이는 네 가지 메서드를 캡슐화합니다. 추가, 삭제, 수정 및 확인

add method

server.insert(데이터 테이블 이름, 삽입할 데이터(키-값 쌍의 개체), 콜백 함수);

업데이트 메소드

server.update(데이터 테이블 이름, 쿼리된 데이터(객체), 업데이트 데이터(객체), 콜백 함수)

삭제 메소드

server.delete(데이터 테이블 이름, 쿼리된 데이터) (객체), 콜백 함수);

find 메소드

server .find (데이터 테이블 이름, 쿼리된 데이터(객체), 콜백 함수)

콜백 함수는 첫 번째 부울 유형의 두 값을 반환합니다. , 처리 성공 여부, 두 번째 값, 검색은 발견된 숫자를 반환하고, 그 밖의 모든 항목은 성공적으로 처리된 항목 수를 반환합니다(이제 한 번에 하나만 처리됩니다)

사용 사례

예를 들어, I 경로에서 데이터를 찾으려면 다음이 필요합니다.

server.find("users",{username:"username"},function (bool,data) {
  if(bool){
   console.log("查询到数据为"+data.length+"条");
  }
  else{
   console.log(data);
  }
 });
});
로그인 후 복사

위 코드는 사용자를 쿼리합니다. 사용자 이름이 테이블의 필드 데이터인 경우 성공하면 데이터가 배열을 반환합니다. 오류가 발생하면 데이터가 반환됩니다. 오류가 직접 반환됩니다.

위 내용은 제가 여러분을 위해 정리한 내용입니다. 앞으로 도움이 되길 바랍니다.

관련 기사:

MySQL은 루트 비밀번호를 변경합니다

품질 JS 코드 작성 방법

js 배열 감소 관련 사용법

위 내용은 nodejs를 사용하여 mongodb의 채우기, 삭제, 수정 및 쿼리 모듈을 작동하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿