#include "ConnectionManager.h" #include <QApplication> Q_GLOBAL_STATIC(ConnectionManager, cm) ConnectionManager::ConnectionManager(QObject *parent) : QObject(parent) { // 初始化数据库连接 if (QSqlDatabase::contains("qt_sql_dafault_connection")) { conn = QSqlDatabase::database("qt_sql_default_connection"); } else { conn = QSqlDatabase::addDatabase("QSQLITE"); conn.setDatabaseName(QApplication::applicationDirPath() + "/data/casic.db"); bool succ = conn.open(); if (succ == true) { LOG(INFO) << QString("打开数据库操作正常[Open Database Success]").toStdString(); } else { LOG(ERROR) << QString("打开数据库操作失败[Open Database Failed]").toStdString(); } } } ConnectionManager::~ConnectionManager() { conn.close(); } ConnectionManager* ConnectionManager::getInstance() { return cm; } QSqlDatabase ConnectionManager::getConnection() { return this->conn; } qint64 ConnectionManager::generateId() { return this->idWorker.nextId(); }