Express框架使用以及数据库公共操作类整理(Win7下的NodeJs)

前端之家收集整理的这篇文章主要介绍了Express框架使用以及数据库公共操作类整理(Win7下的NodeJs)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

具体步骤:

1、安装开发工具WebStorm;

2、安装node/npm(下载地址:https://nodejs.org/download/)选择适合你的xxx.mis安装;

3、安装express框架(cmd窗口模式,用npm命令执行:npm install express);

4、创建nodeJsExpress项目,使用ejs模板;

5、下载node-mssql连接数据库驱动(进入指定的目录用npm命令执行:npm install node-mssql);

6、拷贝node-mssql文件夹到express项目的node-modules目录;

7、使用dbHelper工具类,进行数据查询,以及EJS页面数据展示;

dbHelper代码如下:

  1. /**
    * Created by Administrator on 2015/9/14.
    */
    var node_mssql = require('node-mssql');

    /* add configuration to query object */
    var host = '192.168.20.135',
    port = 1433,
    username = 'sa',
    password = 'sa',
    db = 'GG_ChatDB';

    var queryObj = new node_mssql.Query({
    host: host,
    port: port,
    username: username,
    password: password,
    db: db
    });

    var initDbHelper = function (host,port,username,password,db) {
    queryObj = new node_mssql.Query({
    host: host,
    port: port,
    username: username,
    password: password,
    db: db
    });
    }

    var defaultConfig = function () {
    queryObj = new node_mssql.Query({
    host: host,
    db: db
    });
    }

    var insert = function (data,insertTable,callback,res) {
    queryObj.table(insertTable);
    queryObj.data(data);
    queryObj.insert(function (results) {
    //success
    callback(res,"添加成功!",results);
    },function (err,sql) {
    if (err) {//error
    callback(res,"添加失败!",err);
    console.log(err);
    }
    });
    defaultConfig();
    };

    var list = function (wheresql,orderList,table,res) {
    queryObj.table(table);
    queryObj.where(wheresql);
    queryObj.order(orderList); // ['id desc',...]
    queryObj.select(function (data) {
    //success
    callback(res,"查询成功!",data);
    },sql) {
    if (err) { //error
    callback(res,"查询失败!",err);
    console.log(err);
    }
    });
    defaultConfig();
    };

    var update = function (data,option,upTable,res) {
    queryObj.table(upTable);
    queryObj.data(data);
    queryObj.where(option);
    queryObj.update(function (results) {
    // success callback
    callback(res,"修改成功!",sql) {
    if (err) {
    callback(res,"修改失败!",err);
    console.log(err);
    }
    });
    defaultConfig();
    };

    //参数说明:@delsql删除sql条件,举例 delsql="id=1"
    var deleteById = function (delsql,res) {
    queryObj.query("delete from " + table + " where " + delsql,
    function (delres) {
    callback(res,"删除成功!",delres);
    },
    function (err,sql) {
    if (err) {
    callback(res,"删除失败!",err);
    }
    }
    );
    defaultConfig();
    };

    var queryBysql = function (sql,res) {
    queryObj.query(sql,function (delres) {
    callback(res,"执行成功!","执行失败!",err);
    }
    }
    );
    defaultConfig();
    }

    exports.insert = insert;
    exports.list = list;
    exports.update = update;
    exports.deleteById = deleteById;
    exports.initDbHelper = initDbHelper;
    exports.queryBysql = queryBysql;

要使用dbHelper,在list页面中进行展现,首先配置app.js,设置Action过滤,代码如图:

 

这样配置之后,访问地址:http://xxxx/list就分发到list.js的控制器了,然后在list.js进行处理代码,list.ejs进行便签展现,

list.js代码如下:

  1. var express = require('express');
  2. var dbHelper = require('./dbHelper.js');
  3. var router = express.Router();
  4. /* GET home page. */
  5. router.get('/',function (req,res,next) {
  6. dbHelper.list({},'dbo.table1',res);
  7. // list参数,第一个是whereSQL查询条件,json格式;第二个是表名,第三个是回调函数,第四个是express返回客户端的response类
  8. });
  9. var callback = (data,res) {
  10. res.render('list' 第一个参数:模板名称对应list.ejs,第二个是参数名和数据
  11. };
  12. module.exports = router;

 

list.ejs代码如下:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title></title>
  5. <link rel='stylesheet' href='/stylesheets/style.css'/>
  6. </head>
  7. <body>
  8.  
  9. <ul>
  10. <% for(var i = 0; i < listData.length; i++) { %>
  11. <li><%= listData[i].Id %> : <%= listData[i].Name %></li>
  12. <% } %>
  13. </ul>
  14.  
  15. </body>
  16. </html>

执行结果如图:

 

Express可调用mssql驱动进行数据库操作,更为好用和接近原生态,博客地址:http://www.cnblogs.com/stone_w/p/4815887.html

 

猜你在找的Node.js相关文章