最近一段时间,nodejs十分火,甚至有人扬言,学习了nodejs,可以当全栈工程师。
也就是前后端通吃。哈哈,这引起了我的兴趣,只学习一门语言javascript,就可以全栈通吃,岂不妙哉!
所以,我就下定决心,好好学习一下,既然决定学习一门语言,就要研究它的原理适用性。
这是百度百科给的定义:
最后总结:
1.他适合处理高并发的数据采集展示等应用,简单来说nodejs对i/o操作的支持特别好,所以咱们做一些展示类,实时聊天类应用特别适合。上传下载文件特别快。数据库读取,插入也是很好的。
2.不适合计算量较大的应用,比如我的应用需要大计算量后台处理起来特别慢,这样nodejs的效率就特别低。
之前我用Java做了一个类似网上书店的网站,接下来博主准备用nodejs作为服务器实现它。
一.nodejs链接mysql数据库
1、首先需要安装nodejs 的mysql包
npm install mysql
2、编写nodejs与mysql交互的代码
var mysql = require('mysql'); //数据库名称 var TEST_DATABASE = 'ceshi'; var TEST_TABLE = 'user'; //创建连接 var client = mysql.createConnection({ user: 'root', password: '', }); client.connect(); client.query("use " + TEST_DATABASE); client.query( 'SELECT * FROM '+TEST_TABLE, function selectCb(err, results, fields) { if (err) { throw err; } if(results) { for(var i = 0; i < results.length; i++) { console.log("%d\t%s\t%s", results[i].id, results[i].name, results[i].age); } } client.end(); } );
二.nodejs创建web应用
创建web应用需要express模块。
先下载 npm install express
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World');
})
var server = app.listen(8081, function () {
var host = server.address().address
var port = server.address().port
console.log("应用实例,访问地址为 http://%s:%s", host, port)
})
执行js,node web.js
在浏览器中访问 http://127.0.0.1:8081,结果如下图所示:
接下来需要加载静态文件。
通过 Express 内置的 express.static
可以方便地托管静态文件,例如图片、CSS、JavaScript 文件等。
将静态资源文件所在的目录作为参数传递给 express.static
中间件就可以提供静态资源文件的访问了。例如,假设在 public
目录放置了图片、CSS 和 JavaScript 文件,你就可以:
app.use(express.static('public'));
现在,public
目录下面的文件就可以访问了。
http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html
如果你的静态资源存放在多个目录下面,你可以多次调用 express.static
中间件:
app.use(express.static('public'));
app.use(express.static('files'));
访问静态资源文件时,express.static
中间件会根据目录添加的顺序查找所需的文件。
如果你希望所有通过 express.static
访问的文件都存放在一个“虚拟(virtual)”目录(即目录根本不存在)下面,可以通过为静态资源目录指定一个挂载路径的方式来实现,如下所示:
app.use('/static', express.static('public'));
现在,你就爱可以通过带有 “/static” 前缀的地址来访问 public
目录下面的文件了。
http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html
来源:CSDN
作者:75闪光雷
链接:https://blog.csdn.net/qq_34309305/article/details/71552543