本项目个人尝试了2种方法,一个是直接用mongod,一个是引用mongod里的mongoose。

nodejs-ejs-mogondb-

nodej+ejs模板,通过mogondb数据查询数据实现简单的登陆验证。

搭建mogondb:

一、首先安装mongodb

1.下载地址:http://www.mongodb.org/downloads

2.解压缩到自己想要安装的目录,比如d:\mongodb

3.创建文件夹d:\mongodb\data\db、d:\mongodb\data\log,分别用来安装db和日志文件,在log文件夹下创建一个日志文件MongoDB.log,即d:\mongodb\data\log\MongoDB.log

4.运行cmd.exe进入dos命令界面,执行下列命令   > cd d:\mongodb\bin   > d:\mongodb\bin>mongod -dbpath "d:\mongodb\data\db"  看到类似的信息,则说明启动成功,默认MongoDB监听的端口是27017,mysql的是3306

5.测试连接  新开一个cmd窗口,进入mongodb的bin目录,输入mongo或者mongo.exe,出现如下信息说明测试通过,此时我们已经进入了test这个数据库,如何进入其他数据库下面会说。  输入exit或者ctrl+C可退出。

6.当mongod.exe被关闭时,mongo.exe 就无法连接到数据库了,因此每次想使用mongodb数据库都要开启mongod.exe程序,所以比较麻烦,此时我们可以将MongoDB安装为windows服务  还是运行cmd,进入bin文件夹,执行下列命令  > d:\mongodb\bin>mongod --dbpath "d:\mongodb\data\db" --logpath "d:\mongodb\data\log\MongoDB.log" --install --serviceName "MongoDB"  这里MongoDB.log就是开始建立的日志文件,--serviceName "MongoDB" 服务名为MongoDB  接着启动mongodb服务  > d:\mongodb\bin>NET START MongoDB  打开任务管理器,可以看到进程已经启动

7.关闭服务和删除进程  > d:\mongodb\bin>NET stop MongoDB (关闭服务)  > d:\mongodb\bin>mongod --dbpath "d:\mongodb\data\db" --logpath "d:\mongodb\data\log\MongoDB.log" --remove --serviceName "MongoDB" (删除,注意不是--install了)

二、创建hello-world数据库 1、mongo.exe启动 2、创建数据库 use hello-world 3、插入数据(登陆时的账号密码)db.users.insert({"userid" : "admin", "password" :"123456"})

这样子就ok了;

三:安装node依赖包

npm install

四:启动node项目 node app.js 显示 端口:3000启动成功

附件:使用mongodb基础知识

1.常用的命令

show dbs 显示数据库列表 use dbname 进入dbname数据库,大小写敏感,没有这个数据库也不要紧 show collections 显示数据库中的集合,相当于表格

2.创建&新增

db.users.save({"name":"lecaf"}) 创建了名为users的集合,并新增了一条{"name":"lecaf"}的数据 db.users.insert({"name":"ghost", "age":10}) 在users集合中插入一条新数据,,如果没有users这个集合,mongodb会自动创建 save()和insert()也存在着些许区别:若新增的数据主键已经存在,insert()会不做操作并提示错误,而save() 则更改原来的内容为新内容。 存在数据:{ _id : 1, " name " : " n1 "} ,_id是主键 insert({ _id : 1, " name " : " n2 " }) 会提示错误 save({ _id : 1, " name " : " n2 " }) 会把 n1 改为 n2 ,有update的作用。

3.删除

db.users.remove() 删除users集合下所有数据 db.users.remove({"name": "lecaf"}) 删除users集合下name=lecaf的数据 db.users.drop()或db.runCommand({"drop","users"}) 删除集合users db.runCommand({"dropDatabase": 1}) 删除当前数据库

4.查找

db.users.find() 查找users集合中所有数据 db.users.findOne() 查找users集合中的第一条数据

5.修改

db.users.update({"name":"lecaf"}, {"age":10}) 修改name=lecaf的数据为age=10,第一个参数是查找条件,第二个参数是修改内容,除了主键,其他内容会被第二个参数的内容替换,主键不能修改

第一种(引用mongoose):

  github链接:https://github.com/chenpeng2/node-mongoose。

  

第二种(未引用mongoose):

  github链接:https://github.com/chenpeng2/node-ejs-nomongoose。

  

作者:喜悦的小鹏哥

node-ejs-mongodb结合的项目案例-----引用mongoose和未引用mongoose模块的更多相关文章

  1. node.js + mongodb 做项目的详解(一)

    想写博客很长时间了,因为一直身患懒癌,所以一直拖到了现在.markdown的语法也是刚刚学,试验一下效果好了不说了,直接上干货了.----------------------------------- ...

  2. 8 步搭建 Node.js + MongoDB 项目的自动化持续集成

    任何事情超过 90 秒就应该自动化,这是程序员的终极打开方式.Automating shapes smarter future. 这篇文章中,我们通过创建一个 Node.js + MongoDB 项目 ...

  3. node+express+mongodb初体验

    从去年11月份到现在,一直想去学习nodejs,在这段时间体验了gulp.grunt.yeomen,fis,但是对于nodejs深入的去学习,去开发项目总是断断续续. 今天花了一天的时间,去了解整理整 ...

  4. Node操作MongoDB并与express结合实现图书管理系统

    Node操作MongoDB数据库 原文链接:http://www.xingxin.me/ Web应用离不开数据库的操作,我们将陆续了解Node操作MongoDB与MySQL这是两个具有代表性的数据库, ...

  5. 《Node.js+MongoDB+AngularJS Web开发》读书笔记及联想

    总体介绍 <Node.js+MongoDB+AngularJS Web开发>,于2015年6月出版,是一本翻译过来的书,原书名为<Node.js,MongoDB and Angula ...

  6. Node.JS + MongoDB技术浅谈

    看到一个Node.JS + MongoDB的小样例,分享给大家.魔乐科技软件学院(www.mldnjava.cn)的讲座 Node.JS + MongoDB技术讲座          云计算 +大数据 ...

  7. 【招聘App】—— React/Nodejs/MongoDB全栈项目:登录注册

    前言:最近在学习Redux+react+Router+Nodejs全栈开发高级课程,这里对实践过程作个记录,方便自己和大家翻阅.最终成果github地址:https://github.com/66We ...

  8. 使用node+express+mongodb实现用户注册、登录和验证功能

    无论是手机端还是pc端,几乎都包含登录注册方面功能,今天就使用node+express+mongodb实现一套登录注册功能,这里需要自己去安装MongoDB环境,如果没有安装可以看这篇关于MongoD ...

  9. vue-cli脚手架——2.0版本项目案例

    一.[准备工作] Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/. Git 各平台安装包下载地址为:http://git-scm.com/dow ...

随机推荐

  1. js使用for in遍历时的细节问题

    今天在看别人代码过程中被 "for in"搞得有点晕,所以好好研究了一下,写下来分享给对 for in遍历理解有问题的朋友. 基本格式: for (property in expr ...

  2. 2764: [JLOI2011]基因补全

    2764: [JLOI2011]基因补全 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 570  Solved: 187[Submit][Status ...

  3. Html +++++css总结

    一. Html部分 Html定义 Hyper Text Markup Language  超文本标记语言 html 1.0  ->  html  2.0   -> ... -> ht ...

  4. golang http server分析(一)

    http:http请求过程实质上是一个tcp连接通信,具体通过socket接口编码实现 在go中是通过listenAndServer()方法对外提供了一个http服务,在该方法中完成了socket的通 ...

  5. C#实现无边框窗体点击任务栏图标正常最小化和还原

    protected override CreateParams CreateParams{ get { const int WS_MINIMIZEBOX = 0x00020000; // Winuse ...

  6. iOS开发之视频播放

    1.如何播放视频 iOS提供了MPMoviePlayerController.MPMoviePlayerViewController两个类,可以用来轻松播放视频和网络流媒体\网络音频. 提示:网络音频 ...

  7. centos6.5安装配置supervisor

    1.下载并安装supervisor https://pypi.python.org/pypi/supervisor/3.2.0 .tar.gz cd supervisor- python setup. ...

  8. KMP算法C语言实现。弄了好久才搞好。。。

    我的这个算法中数组的第一位没有像教材中那样用来存数组的大小,所以会有些许的不同.                                                             ...

  9. Spring+SpringMVC+MyBatis+easyUI整合优化篇(三)代码测试

    日常啰嗦 看到标题你可能会问为什么这一篇会谈到代码测试,不是说代码优化么?前两篇主要是讲了程序的输出及Log4j的使用,Log能够帮助我们进行bug的定位,优化开发流程,而代码测试有什么用呢?其实测试 ...

  10. 学习smart gwt 的一些好的网站

    最近在学smart gwt,这个框架和我们比较熟悉的SSH实现思路上有点不一样,因为技术是外国的,所以好多东西都是英文的,正因为是英文的,我们学到的东西才是最多最好的,好了,网站如下: gwt api ...