教程进行到这里已经到了尾声,我们在这里只关注项目开发中最重要的部分,一些实现的细节问题我们就不说了,理解了这四本教程的内容后开始做一个项目应该没问题了。虽然不想牵扯太多实现上面的细节,但是因为“AP层”的特点,因而本文掺杂的实现内容要比前几本教程多一点。为什么这么不喜欢跟“实现”牵连太多?依小弟自己的习惯经验很不喜欢上来就看实现看代码,尤其是对于一个未知的概念,很难从代码中理解其本质。
“事务性数据库系统”,这类应用的开发,总结为五个字,“取数据、显示(界面)”,我们已经介绍完了显示,现在再来看看数据在holon要怎么取,只要知道这两点就可以做项目了。在holon的体系结构中的倒数第二层有一个叫做“AP层”的东西,它负责接收其上层“PR层(界面)”传过来的消息,对数据库进行操作,然后返回结果。“AP层”主要由“DO(Database Object)”,和“BO(Business Object)”构成。DO 是一个“类”,它的属性数据类型以及顺序必须要跟数据库表中的字段完全一致(重要),“BO”里面方法从表中取出数据后把结果放到对应的“DO对象”属性中。这样说可能很难理解清楚,下面我们看一个在实际的操作中“PR层”跟“AP层”的合作实例,以及“BO跟DO”所起到的作用。
浩亮是一个小仓库的管理员,他用鼠标点击了某软件“查看库存”的按钮之后,激活了该软件的内部逻辑,当然这些用户是看不到的。不管这个,让我们来看看“查看库存”这个动作从启动到得到结果返回这个过程PR层跟AP层,以及最重要的DO&BO是如何合作的,根据小弟的经验,刚接触holon的人,对DO&BO最为迷惑。根据上图,“PR Layer”给“AP Layer”发出了“查看库存”的请求,“AP Layer”接受请求之后随即给数据库发出“取库存数据”,这个动作是用“BO”中的方法实现的,这个请求可能是一条“SQL文”也可能是一