我正在使用 node-mysql 作为 orm。 ( https://github.com/mysqljs/mysql )
我正在使用 MySQL 和 Node.JS 创建一个 REST API。早些时候我使用 MongoDB 做了同样的事情。它工作正常。 github.com/chanakaDe/Mint-REST。现在我想用 MySQL 做同样的事情。我完成了大部分工作,但遇到了一些小问题。类比较多,需要集中使用mysql连接。作为单例设计模式。
这是我的新仓库。 https://github.com/chanakaDe/MintRestSQL .我将展示我想在哪里使用这些模式。我这里有数据库文件。我创建了一个新的连接池。 github.com/chanakaDe/MintRestSQL/blob/master/app/util/database.js。
现在我想在我的 Controller 类中使用这个连接/池。因为我无法在每个 Controller 类中创建连接。不 ?这些是我现在的两个 Controller 。 github.com/chanakaDe/MintRestSQL/blob/master/app/routes/report.js github.com/chanakaDe/MintRestSQL/blob/master/app/routes/api.js
请告诉我一个更好的方法来做到这一点。我是 node-mysql 的新手。但这是在 Node.JS 环境中使用 MySQL 的好方法,即使对于生产级系统也是如此。所以我想使用这些标准制作一个好的 API。有没有办法使用单例模式或类似的东西并集中连接并在所有 Controller 中使用它????
需要一些时间来检查我的文件并理解代码。但请检查并给我一个解决方案。我尝试了很多东西,但没有用:(
欢迎您拉回 repo 并进行任何更新
最佳答案
尝试将 database.js 更改为
var mysql = require('mysql');
mysql.createPool({
host : 'localhost',
user : 'root',
password : 'chanaka',
database : 'shared_adult'
}).connect();
module.exports = mysql;
关于mysql - 如何在 node.js 中使用带有 mysql 连接和池的单例设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38495182/