DBForm的设计来源以及主要构想

原创 2004年08月21日 11:39:00

DBForm的设计来源以及主要构想<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

?

DBForm的设计思想来源于我最近作的学生信息管理系统的要求,整个信息系统要求的查询信息比较多,而且大多是模糊查找(贷款,奖学金,勤工助学,考试情况,个人情况等等)。以贷款的查询来举例,主要包括了学生学号,姓名,班级,年级,所属学院等个人基本情况和家庭收入状况,所在地区,学习成绩等级等个人信息扩展情况以及贷款类别,贷款时间,贷款金额等贷款方面的具体信息,数据量众多,编写用于查询的sql语句十分麻烦,况且将要完成的模块比较多,每个模块的查询信息却是大体相同,如果每一个模块都单独写查询语句,工作量真得很大

?

仔细分析了各个模块的功能之后,我们发现模块间查询的界面,主要操作大体相似,所不同的,主要是用于查询的字段和窗体控件名等信息,于是我们开始了整个代码的提炼工作,提出了基本的DBForm构想

:根据遍历窗体中的控件组,提取出要查询的数据库字段以及用户输入的数据

WinForm窗体中,有一个非常好的Tag属性,可以非常方便的保存我们所需要的数据

WebForm窗体中,很遗憾,没有Tag属性,我们就自己继承了类,添加了Tag属性,满足我们DBForm中队数据库子端的添加要求

?

查询不仅仅包括字段名,还包括具体需要查询的操作(如TextBox控件中的tag属性我们便定义为 数据库字段_操作符,例子:studentID_LIKE,直观,也很形象,并且LIKE操作符可以在运行期间动态更改成为”=”等操作符,实现精确匹配)

?

整个DBForm的架构中,要求能够有足够的支持弹性,当前的要求是希望能够同时支持好WinFormWebForm,我们便采用了窗体数据的抓取和数据库相关Sql语句的生成相分离的方法,尽可能的增加整个系统开发的弹性,中间,采用FormInfoEntity类进行窗体数据的封装,传递

FormInfoEntity类中主要包含了FormInfoList,JoinInfoList,其中FormInfoList中主要保存了提取出来的数据库字段以及对应得用户输入信息,字段的类型(数值还是字符串),以及操作符号等等。JoinInfoList主要是要查询的表的连接信息。

?

在整个DBForm的编写中,我发现,整个系统的架构不仅仅使用与查询的情况,在修该,添加,删除的时候,也有很大的用处,只要提取出来了相关窗体的信息,Sql语句的生成是一件很轻松的工作,于是就给DBForm扩展上了修改数据库的功能,整个工作也就是添加了相关的Sql生成类和窗体信息解析类(用于修改的窗体信息和用于查询的窗体信息描述不同)

?

整个DBForm的构架比较有扩展性,能够满足今后多种数据来源的要求,比如说InfoPath中的xml文件,来自WebService中的相关查询等等。

软件漏洞的主要来源

没有一款软件或平台敢说自己是绝对安全的。 软件漏洞永远存在,我们的目的是通过细致的软件设计,良好的编码,发现漏洞后快速的响应来尽量减少软件漏洞的产生,以及降低漏洞被利用后所带来的危害。 下...
  • hnjyzqq
  • hnjyzqq
  • 2015年01月31日 01:14
  • 1296

室内甲醛的主要来源

原文地址:http://www.meijw.com/jiazhuang/56267.html 要除甲醛,必须先弄清楚室内甲醛的主要来源有哪些。为了让消费者清楚明白地知道室内哪里存在甲醛,为什么会存在...
  • renlonggg
  • renlonggg
  • 2017年06月28日 12:43
  • 116

电磁干扰的主要来源

1.来自空间的辐射干扰。空间辐射电磁场(EMI)主要是由电力网络、电气设备的暂态过程、雷电、无线电广播、电视、雷达、高频感应加热设备等产生的,通常称为辐射干扰,其分布极为复杂。若PLC系统置于其射频场...
  • bzgkzlw
  • bzgkzlw
  • 2017年06月21日 15:46
  • 108

我的主要资源来源

先了解知识的源头是必不可少的,这就要求你要有准确的资料来源,在这里分享一下自己查资料的网站: 1,论文下载IEEE Xplore: http://ieeexplore.ieee.org/xpl/Rec...
  • yzfydit
  • yzfydit
  • 2016年03月06日 14:39
  • 271

关于“人工智能面试”的构想

人工智能无疑是未来社会的一大趋势。前两天看了一本心理学经典书籍,看到面试心理学这块时突然引发思考 面试是广大求职者必须经过的一关,它决定求职者给面试官留下的印象,很大程度上决定求职者被录用与否,甚至...
  • NewITlearner
  • NewITlearner
  • 2016年06月24日 10:35
  • 1237

框架的设计模式dbforms

dbforms框架的设计模式 每个框架都有其特定的设计模式(或者称之为思想、精神之类的东西),它反映了这种框架解决问题的方式方法;这种设计模式直接或间接决定我们使用框架的方式,若能恰当把握这...
  • u014660201
  • u014660201
  • 2014年04月19日 12:54
  • 229

关于LT分发系统的设计构想

背景     对tomcat做集群,在多机多tomcat的情况下,如果要更新代码,只能手动的将代码复制,粘贴,然后下一个服务器,复制,粘贴,然后下一个服务器,复制,粘贴。     LT分发系统(因为我...
  • dlf123321
  • dlf123321
  • 2016年08月06日 15:57
  • 1029

揭秘世界福利的主要来源

根据《中国大趋势》一书作者约翰·奈斯比特表示,欧盟正逐步走向安康,以英国“脱欧”为发端的局面还会持续,西方对全体世界的影响不时减弱。过去十年来,中国的影响力逐渐扩大,“一带一路”计策是人类历史上最有洪...
  • dhhsec
  • dhhsec
  • 2016年12月29日 16:25
  • 172

关于人工智能AI的设想

突发奇想,有一个关于人工智能的设想,内容牵扯到人工智能、程序思想、游戏理念等,不感兴趣的朋友就不用浪费您宝贵的时间了哈。 我们都知道,人有七情六欲,我们身为人在做种种选择判断的时候不是会根据自身心理...
  • u010047150
  • u010047150
  • 2017年03月29日 14:54
  • 136

关于A*的构想

一、原理及伪代码实现 A Star 算法的具体作用可以忽略不表了,基本上想用的都知道,不知道的基本上不在乎。 具体伪代码如下: void FindPath(Point[,] maps, P...
  • Cheng624
  • Cheng624
  • 2017年02月13日 15:11
  • 120
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DBForm的设计来源以及主要构想
举报原因:
原因补充:

(最多只允许输入30个字)