• Mongoose简介


      Mongoose 官网地址:http://mongoosejs.com/   ,Mongoose 为node.js提供了优雅的,针对mongodb的ODM(Object Document Mapping,本质也属于一种ORM,不过是基于MongoDB、Redis这种NoSQL的)解决方案。

      下面通过实际例子进行体验,首先确保机器上安装好了MongoDB和Node.js。

      通过命令行安装Mongoose

           npm install mongoose

           假设我们想把碰到的小猫的信息都保存到MongoDB中,第一件事先引入mongoose模块,并声明一个mongoose连接,用来连接本地的test数据库,默认端口是27017

    var mongoose = require('mongoose');
    mongoose.connect('mongodb://localhost/test');

      现在我们有了一个未决的连接。如果我们成功连接,或者出现连接错误,我们需要得到通知:

    var db = mongoose.connection;
    db.on('error', console.error.bind(console, 'connection error:'));
    db.once('open', function() {   //一旦连接成功,将触发这个回调函数
      console.log( ' connected! ') ;   
    });

       下面我们用真正的业务逻辑代码加入到上面的回调函数中

    //定义一个Schema,类似于关系型数据库中的表结构//定义一个Schema,类似于关系型数据库中的表结构
    varvar kittySchema =  kittySchema = newnew mongoose.Schema({
      name: String
    }); mongoose.Schema({   name: S
    //给 kittySchema 添加一个行为属性
    kittySchema.methods.speak = function () {
      var greeting = this.name
        ? "Meow name is " + this.name
        : "I don't have a name";
      console.log(greeting);
    }
    //将一个schema映射成一个Model类
    var Kitten = mongoose.model('Kitten', kittySchema);
    
    //实例化一个Model对象
    var fluffy = new Kitten({ name: 'fluffy' });
    fluffy.speak();
    
    //持久化
    fluffy.save(function (err, fluffy) {
        if (err) return console.error(err);
        fluffy.speak();
      });
                                     

    下面再体验下查询:

    //查询所有
    Kitten.find(function (err, kittens) { if (err) return console.error(err); console.log(kittens); })
    //条件查询 Kitten.find({ name:
    /^fluff/ }, function (err, kittens) { console.log(kittens[0].name) ; });

                 

  • 相关阅读:
    JAVA 高级特性 JDBC
    C3P0 连接池
    JAVA WEB Servlet
    JAVAWEB JSP
    sed 命令
    shell 简单脚本编程
    从首页问答标题到问答详情页
    首页列表显示全部问答,完成问答详情页布局
    制作首页的显示列表
    发布功能完成
  • 原文地址:https://www.cnblogs.com/hzhuxin/p/9603346.html
Copyright © 2020-2023  润新知