NodeJs


从最开始的node的安装开始...刚开始安装的时候就遇到了坑...

一开始选用的是brew 的安装方式,安装的版本太低了!现在已经是8.9了,后来,mac直接去官网下载了一个安装包就安装成功了。

之后就是服务器端的安装了。

我使用的是阿里云服务器, CentOs...打开命令行,连接服务器。

输入

ssh root@你的服务器公网的ip地址

连接上服务器之后呢..我使用的是nodejs 官方的包来安装的。

nodejs中文网进入阿里云镜像包 ,选择你想要下载的包,复制他的下载连接,ok

然后就在终端进行了下载,解压 的操作。

wget + 刚刚复制了的连接,例如:
wget https://npm.taobao.org/mirrors/node/v8.9.0/node-v8.9.0-linux-ppc64.tar.xz

不过安装的时候,最好进入 usr/local/src 里面,一般装的东西都放到这里,然后在这个文件夹里解压...

然后就到了 我被坑很多很多次的步骤!!! 建立软连接...

软链接是干什么的,我们刚刚安装好了的node  只能在 他本身的文件夹里的bin里运行, 例如 cd node/bin 进入到bin之后  ./node -v  可以看到8.9.0 这样的版本提示,但是如果我们返回到根目录,再运行node -v 终端就会报错...

-bash: nd: 未找到命令

类似于这样...

所以,我们需要建立软链接,让终端能运行的命令指向node运行的源文件夹里的node。因此,我们需要在命令行里面输入

ln -s /root/usr/local/src/nodejs/bin/node /root/usr/local/bin/node

反正...在我的服务器上 必须指明root..不然就失败了,网上的教程似乎不需要指明root 可能和环境有关系把。

总之到这里安装的就差不多了...

然后就是使用啦。


对node的解释网上已经多得很了,我只记录一下自己不明白和不了解的地方。

node 可以直接使用es6的语法...因此,同时,为了方便,我使用的是express 的框架 ... 每个语言都会有框架的...

那么就进入我的实战里面看看把。

我通过 express 生成了一个node 工程

bin 目录下 放的是启动这个工程的文件www  如果我们想启动这个服务的话,只需要在bin目录下输入 node www 服务就会启动了。

需要关注的是views 和routes 还有models 文件夹。   express  推荐使用jade格式的代码...但是我有点不习惯....还是比较熟悉 html 文件,那么我们就需要安装一个小插件..ejs

在server文件夹下输入

cnpm i ejs --save

这个插件便安装完成了。

完成之后就需要引入,我们在上图的app.js文件里面这样修改

引入ejs , 然后使用html...

这个时候,我们只需要把views 文件夹里面当jade 文件都改为我们熟悉都html 文件就好了。

...

下面就是我学习都比较模糊都地方了。。

首先是路由...

后端的路由是放到router文件夹里面的。

var express = require('express');
var router = express.Router(); /* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
}); module.exports = router;

首先是 引入 express 然后定义路由...这个看一看官方文档就知道了。

这一块到搭建完后端没踩什么坑...


Mongodb

...我安装这个..安装了很久.....

首先是在官网下载适合自己的版本 到mongodb ,然后类似于node到安装方式来安装...

不过mongodb踩了到坑就是 数据到位置 和 启动mongodb配置到位置,这个位置需要找好。

在mac 电脑..需要在根目录下新建一个data文件夹。然后启动的方式

通过配置文件启动..

但是配置文件的文件夹,还有日志的文件夹是需要我们自己去创建的

如果想要让mongodb 在服务器上后端自己运行,那就在执行的时候加上 --fork 或者在配置文件里面写入fork=true。

大家关闭mongodb 的时候不要使用暴力关闭的方法,我自己服务上的mongodb就是被我折腾了半天...都没弄好....

关闭的时候推荐使用  mongo 连接服务器,用mongo来进行关闭,还有就是 设密码...我的数据库没设密码..然后被黑了。哈哈

总结一下最近对nodejs 和 mongodb 的学习的更多相关文章

  1. 大熊君大话NodeJS之------MongoDB模块(额外篇)

    一,开篇分析 这篇属于扩展知识篇,因为在下面的文章中会用到数据库操作,所以今天就来说说它(Mongodb模块). (1),简介 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为 ...

  2. nodejs操作mongodb

    一.下载地址 https://www.mongodb.com/download-center#community 二.控制台操作mongodb 1.安装完后添加环境变量. 2.在某个根目录下新建dat ...

  3. nodejs链接mongodb数据库

    nodeJs链接mongodb数据库有两种方式,第一种是利用官方自己开发的npm包mongodb链接,第二种是利用第三方npm包mongoose链接:这里如果是window操作系统,建议用mongoo ...

  4. nodejs和mongodb实践

    首先,当然是都安装了nodejs 和mongodb了.这必须是前提条件. 现在我们要用nodejs连接mongodb数据库了.我这里只是一个非常非常简单是实践,初学嘛.更深入的学习之后,我会仔细写笔记 ...

  5. nodejs实践-MongoDB

    nodejs实践-MongoDB laiqun@msn.cn Contents 1. 特点: 2. 开始使用 3. 使用Mongoose操作MongoDB 4. 在express中使用,组织数据库相关 ...

  6. Nodejs中Mongodb使用

    Mongodb使用 打开解压后的Mongodb文件夹,新建data.logs文件夹,并在logs文件夹中新建mongodb.log文档. 添加后Mongod文件夹示意图: 用cmd命令行启动Mongo ...

  7. NodeJS+Express+MongoDB

    一.MongoDB MongoDB是开源,高性能的NoSQL数据库:支持索引.集群.复制和故障转移.各种语言的驱动程序丰富:高伸缩性:MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言 ...

  8. NodeJs操作MongoDB之分页功能与常见问题

    NodeJs操作MongoDB之分页功能与常见问题 一,方法介绍 1,聚合操作之count count()方法可以查询统计符合条件的集合的总数 db.User.count(<query>) ...

  9. NodeJs操作MongoDB之多表查询($lookup)与常见问题

    NodeJs操作MongoDB之多表查询($lookup)与常见问题 一,方法介绍 aggregate()方法来对数据进行聚合操作.aggregate()方法的语法如下 1 aggregate(ope ...

随机推荐

  1. JQ对象和原生DOM对象

    相同点:两者本质上都是DOM元素. 不同点:JQ对象是在原生DOM对象上进行了一次封装,使开发人员使用起来更简洁.高效. 两者之间用法也完全不同,很说初学者经常混淆. 其实区分两者并不难, 1.语法不 ...

  2. 激活层和pooling的作用

    激活层: 激活函数其中一个重要的作用是加入非线性因素的,将特征映射到高维的非线性区间进行解释,解决线性模型所不能解决的问题 pooling层: 1. invariance(不变性),这种不变性包括tr ...

  3. bzoj 3481 DZY Loves Math III——反演+rho分解质因数

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3481 推推式子发现:令Q=gcd(P,Q),ans=Σ(d|Q) d*phi(P/d).把 ...

  4. 配置android-studio应用的快捷键

    http://blog.sina.com.cn/s/blog_ad64b8200102vnl4.html

  5. C# 使用WebClient时,在多网卡时,指定IP发送Web请求

    需要定义一个类,重写GetWebRequest,在方法内,指定IP地址 public class MyWebClient : WebClient { private IPAddress ipAddre ...

  6. KVM虚拟机内无agent情况下的监控方法

    KVM虚拟机内无agent情况下的监控(ceilometer实现) 今天看到大家在群里讨论KVM虚拟机的监控问题,而且是要求VM内无agent情况下的监控.这方面确实没有深入研究,但尚有些openst ...

  7. Matrix Recurrence

    给定矩阵$A,B$,且有 $$f(0) = A ,f(i) =B * \prod_{i=w(i)}^{i-1}f(i)$$ 求f(n) 其中,当w(i)单增时,可以做到$O(n*m^3)$,注意要优化 ...

  8. 2-2和2-3基本数据类型 & 2-4基本数据类型详解 & 3-1和3-2整形字面量值及变量声

    2-4基本数据类型详解 3-1和3-2整形字面量值及变量声 023是八进制的 0x1357是十六进制 0X3C也是十六进制 0x1abL:长整型 变量声明 数据类型 空格 变量名 赋值: 变量的定义:

  9. 51nod - 1363 - 最小公倍数之和 - 数论

    https://www.51nod.com/Challenge/Problem.html#!#problemId=1363 求\(\sum\limits_{i=1}^{n}lcm(i,n)\) 先换成 ...

  10. 5-2 Windows消息队列 (25分)

    5-2 Windows消息队列   (25分) 消息队列是Windows系统的基础.对于每个进程,系统维护一个消息队列.如果在进程中有特定事件发生,如点击鼠标.文字改变等,系统将把这个消息加到队列当中 ...