繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> 面向对象编程 >> 三层结构和印度模式的讨论

三层结构和印度模式的讨论

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:43  文字大小:【】【】【
简介:    在研究WEBSERVICES的时候,调用WEBSERVICES并不用直接与数据库打交道。在传统的C/S应用程序中,完全可以采用这种业务分层方式。对数据表的访问,一般都是一维和二维结构,这样,我们可以...
关键字:印度 模式 结构

在研究WEBSERVICES的时候,调用WEBSERVICES并不用直接与数据库打交道。在传统的C/S应用程序中,完全可以采用这种业务分层方式。对数据表的访问,一般都是一维和二维结构,这样,我们可以构建高可重用的数据库读写模块。例如:

Function ReadData(TableName as String,SQLstring as String) as Object

...

End Function

这个函数以数组的形式返回一维或二维的记录集,其中一维数组表示一条记录,二维数组返回N条记录。SQLstring为查询条件。

Function WriteData(TableName as String,RecArray as Object) as Boolean

...

Rs.Open "select * from 主键=RecArray(N)",...

if Rs.eof then

Rs.addnew '若记录不存在,添加新记录

else

For i=0 to Rs.field.count-1

rs.field(i).value=RecArray(i)

next

end if

Rs.Update

...

End Function

这里以添加一条记录为例,数组长度=字段数。若记录存在则更新,否则则添加新记录。

有文章说印度人喜欢使用大数组,其实是很有效率的。我们在数据查询/修改模块里建立一个全局数组。在Form_load事件中将记录读取到数组中(一维数组记录一条记录,二维数组记录N条记录),这样我们在修改/增加记录时,同时修改该数组。这样我们在刷新显示数据时,只需显示数组的相应记录即可。而保存时,调用上面的写数据函数即可完成。

这样做的好处是,不管怎样修改记录,我们只需执行一次数据读取函数,即使数据更新,也简单的从数组中选取相关的记录即可。

采用这种严格分层的编程方式,编程思路相对简单,代码的重用性非常高。对于团队合作并行设计的编程思路,是一个行之有效的方法。

简单探讨,欢迎有类似设计思路的朋友批评和讨论。

责任编辑:admin
相关文章