• 大小: 24KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-17
  • 语言: 其他
  • 标签: TCP  

资源简介

Qt下TCP通信协议,客户端和服务端代码实例,实现两个终端的通信和收发数据。

资源截图

代码片段和文件信息

#include “databasemanage.h“
#include “showmessage.h“
#include 
#include “device/basedevice.h“
#include “globalvar.h“

DatabaseManage * DatabaseManage::s_instance = NULL;
DatabaseManage::CGarbo DatabaseManage::Garbo;
QString m_curGameSessionName;
qint32 m_curGameID;

DatabaseManage *DatabaseManage::getInstance()
{
    if(s_instance == NULL)
    {
        s_instance = new DatabaseManage;
    }
    return s_instance;
}

int DatabaseManage::connectDatabase(EDatabaseType databaseType const TDatabaseInfo &info)
{
    int createReturn = 0;
    switch(databaseType)
    {
    case ORACLE:
        createReturn = connectOracleDatabase(info);
        break;
    case MYSQL:
        break;
    case SQLITE:
        break;
    default:
        break;
    }
    return createReturn;
}

void DatabaseManage::closeDatabase()
{
    if(m_db.isOpen())
    {
        m_db.close();
    }
}

QString DatabaseManage::databaseErrorInfomation() const
{
    return m_databaseErrorString;
}


DatabaseManage::DatabaseManage(Qobject *parent) : Qobject(parent)
{

}

DatabaseManage::DatabaseManage(const DatabaseManage &)
{

}

DatabaseManage::~DatabaseManage()
{

}

int DatabaseManage::connectOracleDatabase(const TDatabaseInfo &info)
{
    m_db = QSqlDatabase::addDatabase(“QOCI“);
    m_db.setHostName(info.hostName);
    m_db.setPort(info.databasePort);
    m_db.setDatabaseName(info.databaseName);
    m_db.setUserName(info.userName);
    m_db.setPassword(info.userPassword);
    if (m_db.open())
    {
        m_databaseErrorString.clear();
        return 0;
    }
    else
    {
        m_databaseErrorString.append(m_db.lastError().text());
        return -1;
    }
}

int DatabaseManage::connectSqliteDatabase(const TDatabaseInfo &info)
{
    Q_UNUSED(info)
    return 0;
}

int DatabaseManage::connectMySqlDatabase(const TDatabaseInfo &info)
{
    Q_UNUSED(info)
    return 0;
}

void DatabaseManage::getCurGameSessionName(QString curGameSessionName)
{
    m_curGameSessionName = curGameSessionName;
}

void DatabaseManage::getCurGameID(quint32 curGameID)
{
    m_curGameID = curGameID;
}

QList DatabaseManage::getDeviceTypeList()
{
    QList deviceTypeList;
    deviceTypeList.clear();

    QSqlQuery query;
    query.prepare(“select XLHTYPENAME from DEVICE_TYPE order by XLH“);
    if(!query.exec())
    {
        qDebug() << query.lastError().text();
        //ShowMessage::critical(QString::fromLocal8Bit(“查询设备类型失败!%1“).arg(query.lastError().text()));
        return deviceTypeList;
    }

    while(query.next())
    {
        TDeviceType deviceType;
        deviceType.xlh = query.value(“XLH“).toInt();
        deviceType.typeName = query.value(“TYPENAME“).toString();

        qDebug() << “deviceType.xlh:“ << deviceType.xlh
                 << “deviceType.typeName:“ << deviceType.typeName;

        deviceTypeList.append(deviceType);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-10-18 10:18  TCP_client\
     目录           0  2018-07-09 12:05  TCP_client\calculateTime\
     文件         402  2018-07-01 16:25  TCP_client\calculateTime\calculateTime.pro
     文件       18731  2018-07-09 12:05  TCP_client\calculateTime\calculateTime.pro.user
     文件       75648  2018-06-27 13:53  TCP_client\calculateTime\databasemanage.cpp
     文件         183  2018-06-28 15:39  TCP_client\calculateTime\main.cpp
     文件        7741  2018-07-09 12:05  TCP_client\calculateTime\mainwindow.cpp
     文件        1641  2018-07-09 11:14  TCP_client\calculateTime\mainwindow.h
     文件        3703  2018-07-08 14:10  TCP_client\calculateTime\mainwindow.ui
     文件        5081  2018-07-08 14:31  TCP_client\calculateTime\ui_mainwindow.h
     目录           0  2018-10-18 10:18  TCP_serrver\
     目录           0  2018-08-28 14:33  TCP_serrver\mTCP_server\
     文件         183  2018-07-02 16:40  TCP_serrver\mTCP_server\main.cpp
     文件        1019  2018-07-10 12:22  TCP_serrver\mTCP_server\mainwindow.cpp
     文件         567  2018-07-02 18:14  TCP_serrver\mTCP_server\mainwindow.h
     文件        1318  2018-07-10 12:31  TCP_serrver\mTCP_server\mainwindow.ui
     文件         394  2018-07-01 19:16  TCP_serrver\mTCP_server\mTCP_server.pro
     文件       18722  2018-08-28 14:33  TCP_serrver\mTCP_server\mTCP_server.pro.user

评论

共有 条评论