首發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數據庫