连接池的实现来自于:公孙二狗
#ifndef CONNECTIONPOOL_H
#define CONNECTIONPOOL_H
#include <QObject>
#include <QString>
#include <QSqlDatabase>
#include <QSqlQuery>
class ConnectionPool : public QObject
{
Q_OBJECT
public:
explicit ConnectionPool(QObject *parent = nullptr);
/**
* @brief 获取数据库连接,连接使用完后不需要手动关闭,数据库连接池会在使用此连接的线程结束后自动关闭连接。
* 传入的连接名 connectionName 默认为空 (内部会为连接名基于线程的信息创建一个唯一的前缀),
* 如果同一个线程需要使用多个不同的数据库连接,可以传入不同的 connectionName
*
* @param connectionName 连接的名字
* @return 返回数据库连接
*/
static QSqlDatabase openConnection(const QString &conn