admin 管理员组文章数量: 887021
2023年12月23日发(作者:java没配置环境变量)
NodeJS学习手册
1、 NodeJs是什么?
是一个基于Chrome JavaScript运行时建立的平台,用于方便地搭建响应速度快、易于扩展的网络应用。 使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用。Node是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引擎执行Javascript的速度非常快,性能非常好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。
特点:1. 它是一个Javascript运行环境;2. 依赖于Chrome V8引擎进行代码解释;3. 事件驱动;4. 非阻塞I/O;5. 轻量、可伸缩,适于实时数据交互应用;6. 单进程,单线程;
2、 NodeJs安装(windows)
(1) 下载NodeJS安装包
下载地址:/download/,选择windows安装包及版本后继续
(2) 下载完成后点击安装程序进行安装
(3) 安装完成后,检查环境变量中是否已添加NodeJs的路径,如下图:
若有可执行node –version命令,可正常执行并出现如下图版本号则安装成功:
3、 简单的NodeJs程序HelloWorld
(1) 创建一个文件,文件内容如下:
//获取http模块,nodeJS用require获取方法及模块
var http = require('http');
//创建http监听方法,listen(8888)监听8888端口
Server(function (request, response) {
ead(200, {'Content-Type': 'text/plain'});
//设置8888端口调用返回值Hello World
('Hello Worldn');
}).listen(8888);
//控制台打印信息
('Server running at 127.0.0.1:8888/');
(2) 进入目录执行node 命令,启动该程序,执行效果如下:
(3) 打开浏览器,输入链接localhost:8888,浏览器出现如下信息:
以上一个简单的http服务器就创建完成了。
4、 NodeJS的express开发框架使用
(1) 安装express库
在系统命令行操作页面执行npm install -g express-generator@4安装express4库,执行效果如下:
再执行express –V命令,命令行打印出express版本则安装成功,如下图:
(2) 创建express项目
进入想创建项目的路径,执行语句express -e express_demo,执行和效果如下图:
命令执行后,在文件夹会创建express_demo项目,创建文件如下:
各目录用途如下:
bin, 存放启动项目的脚本文件
node_modules, 存放所有的项目依赖库。
public,静态文件(css,js,img)
routes,路由文件(MVC中的C,controller)
views,页面文件(Ejs模板)
,项目依赖配置及开发者信息
,应用核心配置文件
(3) 安装express依赖库,构建项目
进入express_demo目录执行npm install命令,下载安装依赖库,执行后效果如下:
执行之后项目node_modules增加如下目录:
这些即为命令下载的依赖库,通过require方法可以调用这个依赖库中的模块。
(4) Express项目启动
Express4.0之后启动项目使用npm start命令,执行后效果如下:
浏览器访问效果如下:
如此,一个express项目就建立完成了。
5、 NodeJS的supervisor命令
NodeJS项目常规项目启动方法,每次做修改都需要手动重启,给开发调试造成很大的不方便,所以提供supervisor命令,该命令可以在修改项目文件后自动重启项目,无需手动重启,具体使用方法如下:
(1) 安装supervisor,执行npm install supervisor命令,执行效果如下:
(2) 利用supervisor命令启动项目,这边需要注意,supervisor命令只能启动js文件,所以expess4.0的项目,需要启动bin目录下的文件,执行如下:
如上操作后项目就利用supervisor命令成功启动,当项目文件变动时,supervisor会将项目自动重启。
6、 NodeJS开发工具
NodeJS开发常用工具有sublime2,webstorm及eclipse插件nodeclipse,其中sublime2适用小型项目开发,webstorm适用于大型项目开发,由于我们主要开发语言是java所以建议适用nodeclipse进行开发。安装nodeclipse插件需要安装如下两个插件:
(1) 安装插件NodeJS的插件,下载地址:/updates
(2) 安装VJET编辑提示插件,下载地址:/vjet/updates-0.10
以上两个插件安装成功后,就可以在eclipse中新建nodeJs项目,并在其中启动nodeJS项目,这边需要注意的是目前nodeclipse对express4.0框架的支持存在问题,无法启动express4.0的项目,建议在eclipse环境中开发使用express3.0框架。
7、 NodeJS与mysql数据库结合使用
felixge/node-mysql是一个纯nodejs的用javascript实现的一个MySQL客户端程序。felixge/node-mysql封装了Nodejs对MySQL的基本操作,这边主要使用它实现NodeJS与mysql的连接,具体连接操作如下:
(1) 创建基于express4.0的NodeJS测试项目,进入项目下载依赖库,检查项目运行正常;
(2) 进入项目根目录,下载felixge/node-mysql模块,在命令行执行命令npm install
mysql@2.0.0-alpha9,执行后效果如下:
执行之后,项目node_modules目录增加mysql目录,则mysql连接模块安装成功。
(3) 在数据库建立teacher表,表里有name,sex,age三个属性,数据库默认一条数据,信息如下:
(4) 打开项目文件,添加如下代码:
//获取mysql连接组件
varmysql = require('mysql');
//设置mysql连接信息
var conn = Connection({
host: 'localhost',
user: 'root',
password: 'root',
database: 'test',
port: 3306
});
//连接数据库
t();
//定义需要执行的mysql语句
varinsertSQL = 'insert into teacher(name,sex,age)
values("Tom","man",23),("Jack","man",24),("Lily","woman",28)';
varselectSQL = 'select * from teacher limit 10';
vardeleteSQL = 'delete from teacher';
varupdateSQL = 'update teacher set name="Arvin" where age=23';
//delete
(deleteSQL, function (err0, res0) {
if (err0) (err0);
("DELETE Return ==> ");
(res0);
//insert
(insertSQL, function (err1, res1) {
if (err1) (err1);
("INSERT Return ==> ");
(res1);
//query
(selectSQL, function (err2, rows) {
if (err2) (err2);
("SELECT ==> ");
for (vari in rows) {
(rows[i]);
}
//update
(updateSQL, function (err3, res3) {
if (err3) (err3);
("UPDATE Return ==> ");
(res3);
//query
(selectSQL, function (err4, rows2) {
if (err4) (err4);
("SELECT ==> ");
for (vari in rows2) {
(rows2[i]);
}
});
});
});
});
});
以上语句连接数据库后依次执行删除数据,插入三条数据,查询数据,更新一条数据。
(5) 启动程序,查看控制台输出如下:
从控制台打印数据可以看出nodeJS已成功连接上mysql并且按照顺序执行了mysql语句,查看数据库可以看出执行正确,如图:
8、 NodeJS与redis连接
Redis是一个key-value存储系统。和Memcached类似,但是解决了断电后数据完全丢失的情况,而且她支持更多无化的value类型,除了和string外,还支持lists(链表)、sets(集合)和zsets(有序集合)几种数据类型。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操
作都是原子性的。Redis在Java开发中有很多应用,这边学习NodeJS与redis的连接使用:
(1) 安装redis
从/dmajkic/redis/downloads下载redis并解压到想要安装的目录;
(2) 启动redis
打开命令行操作界面,进入redis根目录下,执行语句:
,命令行打印出如下信息:
如上图,则redis启动成功。
(3) 连接redis
重新打开一个命令行操作页面,进入根目录,执行语句 -h
127.0.0.1 -p 6379,连接redis,执行后控制台输出如下:
同时redis服务端控制台打印如下消息,表面有一个客户端连接,如图:
以上输出表明连接redis成功。
(4) 测试redis
进入已连接的redis客户端操作命令行界面,存储一个key为test,执行命令set test “Hello World”,执行后,控制台打印如下:
再将test值取出,执行命令get test,控制台打印如下:
(5) 创建基于express4.0的NodeJS测试项目,进入项目下载依赖库,检查项目运行正常;
(6) 进入项目,安装redis依赖包,执行语句npm install redis,控制台输出如下:
项目目录node_modules中新增redis文件夹;
(7) 打开文件添加如下代码:
//获取redis连接组件
varredis = require("redis");
//连接本地redis
var client = Client(6379,'127.0.0.1');
//set 'redistest'值this is an testing redis,若set成功则get并打印值
('redistest', 'this is an testing redis', function(err, response) {
if (err) {
('Failed to set key of 'redistest', error:' + err);
return false;
}
('redistest',function(errGet,responseGet){
(''redistest':'+responseGet);
});
});
(8) 启动NodeJS项目,查看控制台输出信息,如下图:
可以看到成功打印该信息,为确保set完成,启动redis的client端,运行get redistest,获取redistest值,查看输出,如下:
经过以上操作,nodeJS成功便可成功连接并操作redis。
9、 参考资料
学习步骤建议:/story/4664635
NodeJS连接mysql:/series-nodejs/
NodeJS连接redis:/robanlee/blog/261720
Nodeclipse安装:/blog/1855154
版权声明:本文标题:NodeJS学习手册 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1703276531h445184.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论