Anda dapat membuat pembungkus db lalu memintanya. node's require mengembalikan instance modul yang sama setiap saat, sehingga Anda dapat melakukan koneksi dan mengembalikan handler. Dari dokumen Node.js :
Anda dapat membuat db.js
:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : '',
database : 'chat'
});
connection.connect(function(err) {
if (err) throw err;
});
module.exports = connection;
Kemudian di app.js
. Anda , Anda hanya akan membutuhkannya.
var express = require('express');
var app = express();
var db = require('./db');
app.get('/save',function(req,res){
var post = {from:'me', to:'you', msg:'hi'};
db.query('INSERT INTO messages SET ?', post, function(err, result) {
if (err) throw err;
});
});
server.listen(3000);
Pendekatan ini memungkinkan Anda untuk mengabstraksi detail koneksi apa pun, membungkus apa pun yang ingin Anda ekspos dan memerlukan db
di seluruh aplikasi Anda sambil mempertahankan satu koneksi ke db Anda berkat cara kerja node require :)