1、使用express创建简单web服务器
项目文件下安装express,这个不多说,很简单,直接在项目目录下运行
npm install express在项目目录下创建app.js文件,代码如下
var express = require('express); //引入express模块 var app = express(); //创建express的实例 app.get('/', function(req, res){ res.send('Hello,myServer'); //服务器响应请求 }); app.listen(3000,function(){ //监听3000端口 console.log("Server running at 3000 port"); });
项目目录下运行
node app.js可以看到结果
打开浏览器访问:
http://localhost:3000/
2、添加数据库,连接到数据库并在console中输出
此处参考菜鸟教程:
菜鸟教程
利用菜鸟教程中的示例数据库,导入到本地数据库连接中,如图
对app.js中的代码进行修改
var express = require('express'); //引入express模块 var mysql = require('mysql'); //引入mysql模块 var app = express(); //创建express的实例 var connection = mysql.createConnection({ //创建mysql实例 host:'127.0.0.1', port:'3306', user:'root', password:'root', database:'myserver' }); connection.connect(); var sql = 'SELECT * FROM websites'; connection.query(sql, function (err,result) { if(err){ console.log('[SELECT ERROR]:',err.message); } console.log(result); //数据库查询结果返回到result中 }); app.get('/',function (req,res) { res.send('Hello,myServer'); ////服务器响应请求 }); connection.end(); app.listen(3000,function () { ////监听3000端口 console.log('Server running at 3000 port'); });此时再运行node app.js时会发现数据库查询数据返回到console中
web页面上访问仍然没有变化
3、将数据库的数据返回到web页面上,通过访问浏览器能看到数据库返回结果
再对app.js进行修改,然后运行node app.js
var express = require('express'); //引入express模块 var mysql = require('mysql'); //引入mysql模块 var app = express(); //创建express的实例 var connection = mysql.createConnection({ //创建mysql实例 host:'127.0.0.1', port:'3306', user:'root', password:'root', database:'myserver' }); connection.connect(); var sql = 'SELECT * FROM websites'; var str = " "; connection.query(sql, function (err,result) { if(err){ console.log('[SELECT ERROR]:',err.message); } str = JSON.stringify(result); //数据库查询的数据保存在result中,但浏览器并不能直接读取result中的结果,因此需要用JSON进行解析 //console.log(result); //数据库查询结果返回到result中 console.log(str); }); app.get('/',function (req,res) { res.send(str); //服务器响应请求 }); connection.end(); app.listen(3000,function () { ////监听3000端口 console.log('Server running at 3000 port'); });
可以看到console的输出信息,将数据库中RowDataPacket解析成了JSON对象
再次打开浏览器
至此,实际上就已经完成了nodejs+express+mysql的最简单的开发,省去了繁琐的路由,如果想让页面更美观,使用Ext或者CSS去写页面都可以,这里不再赘述。