Qt creator下使用 QxOrm,附实例及注释

本文介绍了在Qt Creator中利用QxOrm框架进行数据库操作的方法,包括ORM映射原理,MVD模式在Qt中的应用。通过创建TbPatientEvaluInfo_model类,实现了数据库表与对象的映射,并详细解析了模型类如何封装数据、处理数据交互以及与Qt视图组件的绑定,简化了数据管理与展示的复杂性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ORM 就是在数据库和对象之间作了一个映射:

  • 数据库的表(table) –> 类(class)

  • 记录(record,行数据)–> 对象(object)

  • 字段(field)–> 对象的属性(attribute)

ORM 将迫使你使用 MVC 风格

       其实Qt中的MVC并不叫MVC,而是叫“MVD”,Qt中没有Controller的说法,而是使用了另外一种抽象: Delegate (委托) ,其行为和传统的MVC是相同的。

        M:model     模型

        V: view       视图

        D:Delegate 委托

下面直接记录实例

创建一个类,与表格相映射      .h      .cpp

#include <QxOrm.h>

/*
 * 通常在使用QxOrm进行对象关系映射时,需要让自定义的业务类继承自qx::IxPersistable接口或者派生自qx::Persistent基类(在不同版本的QxOrm中可能是不同的要求)。
 * 这是因为这些基类或接口提供了与数据库交互的基础能力,比如标识类为可持久化的类型,以及实现序列化、反序列化、数据库操作等功能所需的方法。
*/
class TbPatientEvaluInfo : public qx::IxPersistable
{
    /*
     * 这个宏的作用是在QxOrm框架内部声明TbPatientEvaluInfo类为友元类。
     * 由于QxOrm需要访问类的私有和受保护成员以实现持久化,通过声明为友元类,
     * QxOrm库可以访问类的所有成员并进行序列化、反序列化等操作,这是实现ORM所必需的权限。
    */
    QX_REGISTER_FRIEND_CLASS(TbPatientEvaluInfo)


    /*
     * 这个宏通常用于hpp文件中,用于标记TbPatientEvaluInfo类为可持久化的类。
     * QxOrm库会根据这个宏去解析类的成员变量,并在运行时为其提供自动的持久
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值