如何在nodejs中编写数据库模块

在我的项目中,我正在使用MySQL数据库。 问题是,我不知道如何写简单的数据库模块到一个js文件。

我的代码是:

文件:database.js

var mysql = require("mysql"); var connection = mysql.createConnection({ host: "localhost", user: "root", password: "", database: "mydb" }); module.exports = class Database { constructor() { connection.connect(function (err) { if (err) { console.error(err); throw err; } else { console.log("Connection to database was successful"); } }); } getConnection() { return connection; } }; 

我在项目中有很多文件,每一个都需要使用数据库,问题是,当我每次调用database.js构造函数的时候,我认为它是一个坏的方法。

有没有更好的方法如何在项目中使用数据库连接? 有点像从database.js getConnection()文件中调用getConnection()而不调用构造函数。

感谢您的任何帮助。

可能的解决scheme:

 const mysql = require("mysql"), connection = mysql.createConnection({ host: "localhost", user: "root", password: "", database: "mydb" }); connection.connect(function (err) { if (err) { console.error(err); throw err; } else { console.log("Connection to database was successful"); } }); module.exports = { getConnection() { return connection; } }; 

在导出写入时在你的database.js文件中:

 modules.exports = new Database(); 

并使用

require('./path/to/database-file')

无论你在哪里使用实例,它总会得到相同的对象。