首发github/blog 欢迎你们评论给星javascript
首先假定你已经安装了 Node.js,接下来为你的应用建立一个目录,而后安装express-generator应用骨架css
$ mkdir node-demo $ npm install express-generator -g //mac须要加sudo
$ express -h 用法: express [options] [dir] 选项: -h, --help 输出使用信息 -V, --version 输出版本号 -e, --ejs 添加ejs引擎支持(默认为jade) --hbs 添加handlebars引擎支持 -H, --hogan 添加hogan.js引擎支持 -c, --css <engine> 添加stylesheet <engine> 支持 (less|stylus|compass|sass) (默认为CSS) --git 添加.gitignore -f, --force 非空目录上的 force
$ express node-demo
执行此命令后会有如下代码html
warning: the default view engine will not be jade in future releases warning: use `--view=jade' or `--help' for additional options //警告:默认的视图引擎在将来版本中不会是JADE //警告:使用“-VIEW = JADE”或“帮助”选项 //这里咱们从新生成骨架默认为ejs模板 使用如下命令 //express --view=ejs blog //--view=模板引擎的名称,有不少种 //blog为项目文件夹名称 $ express --view=ejs node-demo 使用ejs模板引擎 // 出现如下信息,安装指示 一步一步进行 create : node-demo/ create : node-demo/public/ create : node-demo/public/javascripts/ create : node-demo/public/images/ create : node-demo/public/stylesheets/ create : node-demo/public/stylesheets/style.css create : node-demo/routes/ create : node-demo/routes/index.js create : node-demo/routes/users.js create : node-demo/views/ create : node-demo/views/error.jade create : node-demo/views/index.jade create : node-demo/views/layout.jade create : node-demo/app.js create : node-demo/package.json create : node-demo/bin/ create : node-demo/bin/www change directory: $ cd node-demo install dependencies: $ npm install run the app: $ DEBUG=node-demo:* npm start
$ npm start //浏览器输入 http://localhost:3000/ //便可看到 //Express //Welcome to Express
项目建立成功以后,生成四个文件夹和两个文件,java
$ npm install mysql --save
根目录sql文件夹 里面新建sqlConfig.js,内容以下:node
// 引入mysql var mysql = require('mysql'); var pool = mysql.createPool({ host: "localhost", //这是数据库的地址 port: "2000", user: "root", //须要用户的名字 password: "12345", //用户密码 ,若是你没有密码,直接双引号就是 database: "huang" //数据库名字 }); /** * @param {*} sql sql语句 * @param {*} callback 回调函数 */ function query(sql, callback) { pool.getConnection(function (err, connection) { connection.query(sql, function (err, rows) { callback(err, rows); connection.release(); //释放连接 }); }); } exports.query = query;
routes文件夹下面新建admin_user.js对应 admin_user表模块 内容以下:mysql
var express = require('express'); var router = express.Router(); //引入数据库包 var sql = require("../sql/sqlConfig.js"); /** * 查询列表页 */ router.get('/', function (req, res, next) { sql.query('select * from admin_user', function (err, rows) { if (err) { console.log(err) res.render('index.ejs', { title: 'Express', datas: [] }); } else { res.render('index.ejs', { title: 'Express', datas: rows }); } }) }); module.exports = router;
sql文件夹 继续新建 AdminUserSQL.js 内容以下:git
//admin_user表 sql语句 var AdminUserSQL = { queryAll: 'SELECT * FROM admin_user', }; module.exports = AdminUserSQL;
进入app.js,加入一下代码:github
//引入users模块 var AdminUsersRouter = require('./routes/admin_user'); app.use('/get-admin-users', AdminUsersRouter);
http://localhost:3000/get-admin-userssql
Express Welcome to Express userName 姓名 admin 超级管理员
node.js配合express链接mysql获取admin_user表的简单demo完成。
通信服务器搭建第一步完成,下一步咱们将配合socket.io完成消息推送。欢迎你们评论交流。
源码见github数据库