Newer
Older
CasicBioRecNew / dao / util / ConnectionManager.cpp
#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();
}