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代码如下:

复制代码
/**
* 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,
port: port,
username: username,
password: password,
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, callback, res) {
queryObj.table(table);
queryObj.where(whereSql);
queryObj.order(orderList); // ['id desc',...]
queryObj.select(function (data) {
//success
callback(res, "查询成功!", data);
}, function (err, sql) {
if (err) { //error
callback(res, "查询失败!", err);
console.log(err);
}
});
defaultConfig();
};

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

//参数说明:@delsql删除sql条件,举例 delsql="id=1"
var deleteById = function (delsql, table, callback, 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, callback, res) {
queryObj.query(sql, function (delres) {
callback(res, "执行成功!", delres);
},
function (err, sql) {
if (err) {
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代码如下:

复制代码
var express = require('express');
var dbHelper = require('./dbHelper.js');

var router = express.Router();


/* GET home page. */
router.get('/', function (req, res, next) {
    dbHelper.list({}, 'dbo.table1', callback, res); 
    // list参数,第一个是whereSql查询条件,json格式;第二个是表名,第三个是回调函数,第四个是express返回客户端的response类
});

var callback = function (data, res) {
    res.render('list', {listData: data});
    // 第一个参数:模板名称对应list.ejs,第二个是参数名和数据
};

module.exports = router;
复制代码

 

list.ejs代码如下:

复制代码
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link rel='stylesheet' href='/stylesheets/style.css'/>
</head>
<body>

<ul>
    <% for(var i = 0; i < listData.length; i++) { %>
    <li><%= listData[i].Id %> : <%= listData[i].Name %></li>
    <% } %>
</ul>

</body>
</html>
复制代码

执行结果如图:

 

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





本文转自王磊的博客博客园博客,原文链接:http://www.cnblogs.com/vipstone/p/4748533.html,如需转载请自行联系原作者


目录
相关文章
|
9月前
|
前端开发 JavaScript NoSQL
使用 Node.js、Express 和 React 构建强大的 API
本文详细介绍如何使用 Node.js、Express 和 React 构建强大且动态的 API。从开发环境搭建到集成 React 前端,再到利用 APIPost 高效测试 API,适合各水平开发者。内容涵盖 Node.js 运行时、Express 框架与 React 库的基础知识及协同工作方式,还涉及数据库连接和前后端数据交互。通过实际代码示例,助你快速上手并优化应用性能。
|
JavaScript 中间件 关系型数据库
构建高效的后端服务:Node.js 与 Express 的实践指南
在后端开发领域,Node.js 与 Express 的组合因其轻量级和高效性而广受欢迎。本文将深入探讨如何利用这一组合构建高性能的后端服务。我们将从 Node.js 的事件驱动和非阻塞 I/O 模型出发,解释其如何优化网络请求处理。接着,通过 Express 框架的简洁 API,展示如何快速搭建 RESTful API。文章还将涉及中间件的使用,以及如何结合 MySQL 数据库进行数据操作。最后,我们将讨论性能优化技巧,包括异步编程模式和缓存策略,以确保服务的稳定性和扩展性。
|
Web App开发 JSON JavaScript
Node.js 中的中间件机制与 Express 应用
Node.js 中的中间件机制与 Express 应用
|
SQL 存储 BI
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
|
缓存 负载均衡 JavaScript
构建高效后端服务:Node.js与Express框架实践
在数字化时代的浪潮中,后端服务的重要性不言而喻。本文将通过深入浅出的方式介绍如何利用Node.js及其强大的Express框架来搭建一个高效的后端服务。我们将从零开始,逐步深入,不仅涉及基础的代码编写,更会探讨如何优化性能和处理高并发场景。无论你是后端新手还是希望提高现有技能的开发者,这篇文章都将为你提供宝贵的知识和启示。
|
JavaScript
使用node.js搭建一个express后端服务器
Express 是 Node.js 的一个库,用于搭建后端服务器。本文将指导你从零开始构建一个简易的 Express 服务器,包括项目初始化、代码编写、服务启动与项目结构优化。通过创建 handler 和 router 文件夹分离路由和处理逻辑,使项目更清晰易维护。最后,通过 Postman 测试确保服务正常运行。
907 1
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的完美结合
【10月更文挑战第21天】本文将引导你走进Node.js和Express框架的世界,探索它们如何共同打造一个高效、可扩展的后端服务。通过深入浅出的解释和实际代码示例,我们将一起理解这一组合的魅力所在,并学习如何利用它们来构建现代Web应用。
450 1
|
Web App开发 JavaScript 前端开发
探索后端开发:Node.js与Express的完美结合
【10月更文挑战第33天】本文将带领读者深入了解Node.js和Express的强强联手,通过实际案例揭示它们如何简化后端开发流程,提升应用性能。我们将一起探索这两个技术的核心概念、优势以及它们如何共同作用于现代Web开发中。准备好,让我们一起开启这场技术之旅!
290 0
|
Web App开发 JavaScript 前端开发
构建高效后端服务:Node.js与Express框架的实践
【10月更文挑战第33天】在数字化时代的浪潮中,后端服务的效率和可靠性成为企业竞争的关键。本文将深入探讨如何利用Node.js和Express框架构建高效且易于维护的后端服务。通过实践案例和代码示例,我们将揭示这一组合如何简化开发流程、优化性能,并提升用户体验。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用技巧。
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的融合之道
【10月更文挑战第31天】在追求快速、灵活和高效的后端开发领域,Node.js与Express框架的结合如同咖啡遇见了奶油——完美融合。本文将带你探索这一组合如何让后端服务搭建变得既轻松又充满乐趣,同时确保你的应用能够以光速运行。
305 0