[Node.js]expressjs简单测试连接mysql
下载好node.js和通过npm安装好express.js后,先写package.json
{
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/nodemon/bin/nodemon.js app.js"
},
"dependencies": {
"express": "3.4.8",
"jade": "*",
"mysql":"*",
"underscore":"*"
},
"devDependencies":{
"nodemon":"*"
}
}
nodemon是当js文件修改后,重新启动node.js进程,方便测试;
npm install安装依赖
其中一个start命令是用于启动服务器时,直接使用npm start来执行此命令;
新建立两个文件夹,models和config
写一个config配置文件,去连接mysql的:
module.exports = {
mysql_dev: {
host: 'localhost',
user: 'dbu user',
password: 'your password',
database: 'your db name',
connectionLimit: 10,
supportBigNumbers: true
}
};
再写上一个database.js文件:
var mysql = require('mysql');
var config = require('../config/config');
var pool = mysql.createPool(config.mysql_dev);
exports.pool = pool;
在models里建立一个User.js文件作为model:
var db = require('./database');
var _ = require('underscore');
var User = function() {};
User.prototype.find = function(id, callback) {
var sql = "SELECT * FROM users WHERE id =?";
// get a connection from the pool
db.pool.getConnection(function(err, connection) {
if (err) {
callback(true);
return;
}
// make the query
connection.query(sql, [id], function(err, results) {
if (err) {
callback(true);
return;
}
callback(false, results);
});
});
};
module.exports = User;
最后在app.js里引入,再调用:
var User = require('./models/User');
//.......
app.get('/users/:userid',function(req,res){
var userid = req.params.userid;
var user = new User();
user.find(userid,function(err,result){
if(err){
res.send('not found');
}
res.send(result.length === 1 ? result[0]:result);
});
});
这样就简单地完成一个后端的node.js分级结构,前端提供rest请求。
[Node.js]expressjs简单测试连接mysql的更多相关文章
- Centos7 中 Node.js安装简单方法
最近,我一直对学习Node.js比较感兴趣.下面是小编给大家带来的Centos7 中 Node.js安装简单方法,在此记录一下,方便自己也方便大家,一起看看吧! 安装node.js 登陆Centos ...
- 创建node.js一个简单的应用实例
在node.exe所在目录下,创建一个叫 server.js 的文件,并写入以下代码: //使用 require 指令来载入 http 模块 var http = require("http ...
- 使用 Node.js 实现简单的 Webhook
距离 Node.js 这个东西出来已经过了好久了,感觉现在的前端如果不会点 Node.js 就有点太落后于时代啦.我接触它是从去年暑假开始的,当时在写一个比较神奇的东西,就顺便接触了一下.虽然网传 n ...
- 用node.js实现简单的web服务器
node.js实现web服务器还是比较简单的,我了解node.js是从<node入门>开始的,如果你不了解node.js也可以看看! 我根据那书一步一步的练习完了,也的确大概了解了node ...
- node.js作为“简单HTTP服务器”
场景 当我学习一个JavaScript库的时候,需要一个非常简单的HTTP服务器把当前工作路径变为网站根目录,由此来访问网页的静态信息.现在,除了下边的脚本server.js,假设你已经拥有: 一个工 ...
- Nodejs入门-基于Node.js的简单应用
服务端JavaScript 众所周知的,JavaScript是运行在浏览器的脚本语言,JavaScript通常作为客户端程序设计语言使用,以JavaScript写出的程序常在用户的浏览器上运行.直至N ...
- 利用node.js来实现长连接/聊天(通讯实例)
首先: 需要在服务器端安装node.js,然后安装express,socket.io这两个模块,并配置好相关的环境变量等. 其次: 服务端代码如下: var app = require('expres ...
- vue之node.js的简单介绍
一.什么是node.js? 它是可以运行JavaScript的服务平台,可以吧它当做一门后端程序,只是它的开发语言是JavaScript 二.安装 1.node.js的特性: - 非阻塞IO模型 - ...
- vue学习【第三篇】:vue之node.js的简单介绍
什么是node.js 它是可以运行JavaScript的服务平台,可以吧它当做一门后端程序,只是它的开发语言是JavaScript 安装node.js node.js的特性 - 非阻塞IO模型 - 时 ...
随机推荐
- MYSQL分页存储过程及事务处理--转自peace
MYSQL的分页过程,和事务处理的一个测试过程. /* --名称:MYSQL版查询分页存储过程 by peace 2013-8-14 --输入参数:@fields -- 要查询的字段用逗号隔开 --输 ...
- [汇编语言]-第五章[bx]和loop指令
1- [bx]和内存单元的描述 [0]表示内存单元, 他的偏移地址为0 mov ax,[0] 将一个内存单元的内容送入到ax.这个内存单元的长度为2字节(字单元),存放一个字,偏移地址为0,段地址在d ...
- 资源回收 left
select DISTINCT human.tid,log_pv_change.systafftid from human left join human_user on human.tid=huma ...
- Azure File SMB3.0文件共享服务(5)
使用Java管理Azure文件共享服务 Azure文件共享服务提供了多种方式的访问接口,包括Powershell,.Net, Java, Python等等,本章主要介绍如何使用Java来访问A ...
- 一个AVRUSB作品HID类
最近为了HID类设备弄了半个把月.终于完成这个无线(红外)多媒体键盘,带鼠标功能.难就难在描述符上,不过在近4天的资料翻阅及多次的测试下,电脑不知道重启了多少次啊,的情况下 搞定了这个东西,大家可以看 ...
- tomcat优化-有改protocol 和 缓存 集群方案
tomcat优化 在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验. 1. 服务器资源 服务器所能提供CPU.内存.硬 ...
- gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解
摘自http://blog.csdn.net/elfprincexu/article/details/45043971 gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解 C和C+ ...
- python list求交集
方法一: a=[1,2,3] b=[1,3,4] c=list(set(a).intersection(set(b))) print c #[1,3] 这种方法是先把list转换为set,再用set求 ...
- iOS10隐私设置及相应问题
iOS10新添加了10个隐私设置: NSBluetoothPeripheralUsageDescription="App需要您的同意,才能访问蓝牙"; NSCalendarsUsa ...
- 委托-异步调用-泛型委托-匿名方法-Lambda表达式-事件【转】
1. 委托 From: http://www.cnblogs.com/daxnet/archive/2008/11/08/1687014.html 类是对象的抽象,而委托则可以看成是函数的抽象.一个委 ...