我是 Express 的新手,我正试图围绕 Express + Node-Mysql。
我想为每个 http 请求使用一个新的 mysql 连接。
这是我的 app.js 文件:
var express = require( "express" ),
mysql = require( "mysql" ),
routes = require( "./routes" );
var app = module.exports = express(),
db = mysql.createConnection( require( "./config/db" ) );
app.configure(function(){
app.set( "views", __dirname + "/views" );
app.set( "view engine", "jade" );
app.set( "db", db );
app.use( express.logger( "dev" ));
app.use( express.bodyParser() );
app.use( app.router );
app.use( express.static( "front" ));
});
app.configure( "development", function(){
app.use( express.errorHandler() );
});
routes( app );
app.listen(80);
然后,在我的路由文件中,我执行以下操作:
module.exports = function( app ){
var db = app.get( "db" );
app.get( "/stuff", function( req, res ){
db.connect( function(err){
var sql = "SELECT * FROM stuff";
db.query( sql, function( err, result ){
res.send( result );
db.end(function( err ){ });
});
});
});
};
这有效,但我不确定它是否“正确”。有没有更清洁的方法来完成我所追求的?
在此先感谢您的帮助。