
vc++实现反射式数据库模版
佳昌
热爱编程与技术研究,提倡知识共享,从实际项目入手解决技术难题。
展开
-
vc++实现反射式数据库模版(4.实现数据库模版)
前三节参照MFC实现了数据模型的序列化工作。这一节就利用ADO完成数据库模版,这里实现增加和查询功能,有兴趣可以自己参照完成删除和更新。 由于查询结果可能是一个集合,这里我们把数据模型设计成链表,只需在基类增加TDObject* m_pNextObject;指向下个数据模型的指针。 参照软件设计原则,我们把业务对象和业务逻辑分开。建立TDLogic做为我们的数据操作模版。原创 2017-02-24 12:09:23 · 353 阅读 · 0 评论 -
vc++实现反射式数据库模版(3.序列化、反序列化与消息映射)
前两节模拟实现了MFC的运行时类识别与动态创建,就是为了这节做工作的。因为我们的目的就是把对象中的数据转化成字符串,前提是我们对对象的结构是未知的,通过一种通用的方式方便快捷无重复的实现我们的想法。 首先简单介绍下MFC序列化。MFC把DECLARE_SERIAL与IMPLEMENT_SERIAL做为序列化初始化宏与实现宏。两个宏在动态创建基础上重写了>>运算符,通过调用虚函数Serialize(Carchive&ar)对成员变量进行读取及写入。如果我们像MFC序列化一样把自己成员也通过一个虚函数读取写原创 2017-02-23 11:53:52 · 583 阅读 · 0 评论 -
vc++实现反射式数据库模版(2.动态创建)
为何说要用到动态创建呢,因为我们不仅需要insert还需要select,我们把查询到的结果反向填充到类和对象中,就需要实例化我们的类。然后把填充好的对象返回出去就可以使用得到的对象了,多么灵活。实现动态创建我们所做的只需要在运行时类识别基础上增加动态创建相应的操作就可以了原创 2017-02-22 16:18:46 · 375 阅读 · 0 评论 -
vc++实现反射式数据库模版(1.运行时类识别)
前段时间写一个web应用,当然c#和java已经提供现成框架倒也方便,不过由于种种原因客户端需要MFC实现。在这里就介绍下怎么一步步完成这个功能。遇到的最大问题就是实现众多类模型的增删改查。原创 2017-02-22 14:16:33 · 579 阅读 · 0 评论