先看一段源码压压惊. 所有的源码都是来自于SUMMIT 帮助文档. 并且很多都是闭源的. 我们在猜测的过程中重构这些函数。
为了更直观的展示给各位看官,去除了盎余的代码.
int main ( int argc , char ** argv )
{
sCUSTOMER * customer;
sENTITY * custEnt;
// 1
sStandardInit( argc, argv, NULL, 00 );
// 这个初始化函数做了很多工作, 建立DB连接,加载元数据, 建立业务模型调用通道(就是初始化指针对象)等等,一眼难尽.
// 2
custEnt = sGetEntityByName( "CUSTOMER" );
// 这个有点意思. 其实在初始化的时候已经把元数据模型(上面有篇文章提到过)加载到内存.这里就是找到这个地址而已.后续读写数据的时候会抓此指针指向的地址中的内容去使用
// 3
sEntityCreate( custEnt, (void **)&customer );
// 分配内存.
// 4
sEntityDBRead( custEnt, (void *)customer, "ALL", 00 );
// 抓数据.
// 5
sEntityFree( Entity, (void **)&customer, sYES );
// 释放内存
// 6
sFreeGlobal();
// 结束
return 0;
}
对于summit的Coding来说 , 这应该是一段标准过程, 唯一的不同可能就是取数的方式不太一样. 比如抓一堆数据还是抓1条数据.
别看这儿就6个函数. 这里涉及到的内容.或者说后面的那些代码, 还是有点意思的. 虽然难度不大, 但是农民工耗体力阿.
下面来看张图. 画图水平有限(整不出太克拉斯的炫酷吊炸天的图),