[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模型 - 时 ...
随机推荐
- 微信OPENID授权方法
今天搞了下微信授权, 总结了下微信的授权规则与步骤 先来几个关键字 Openid 微信ip(属于唯一指向公众号的id) redirect_uri 授权回调地址 State 回调地址带参数 Appi ...
- 初识scrapy,美空网图片爬取实战
这俩天研究了下scrapy爬虫框架,遂准备写个爬虫练练手.平时做的较多的事情是浏览图片,对,没错,就是那种艺术照,我骄傲的认为,多看美照一定能提高审美,并且成为一个优雅的程序员.O(∩_∩ ...
- Echart 官网给的一个直观的事例
附录:一个直观的事例 查看更多实例 example,或者使用这个demo 或 ECharts单一文件引入作为你的模板 // 图表实例化------------------ // srcipt标签式引入 ...
- HDU 1312 Red and Black(bfs)
Red and Black Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Descr ...
- PHP环境搭配
电脑上如果有apache,必须先卸载了先,如果有集成的环境,类似于apmserver,也必须先停止先.不然安装的时候,会出现修复和卸载选项,而不是典型安装跟用户自定义安装. apache安装目录 E: ...
- MFC 遍历FTP服务器目录相关
CInternetSession* pSession; pSession = new CInternetSession; //构造新的连接 CFtpConnection* pFtpCon; pFtp ...
- struts2_20140720
有这样的感觉:前面学的东西弄会了,过了一段时间又感觉陌生了,还要重新开始.这次想个好办法,把写的程序用博客记录下来,把自己的学历历程用博客的形式呈现出来,一来可以方便复习,而来可以以后开发程序可以快速 ...
- MySQL 5.6 中 TIMESTAMP 的变化
http://www.williamsang.com/archives/818.html
- javascript链式调用实现方式总结
方法链一般适合对一个对象进行连续操作(集中在一句代码).一定程度上可以减少代码量,缺点是它占用了函数的返回值. 一.方法体内返回对象实例自身(this) function ClassA(){ this ...
- 【LeetCode练习题】Next Permutation
Next Permutation Implement next permutation, which rearranges numbers into the lexicographically nex ...