|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。数据|数据库|心得
今朝,基于干系型数据库的使用体系各处都是,可否供应一个壮大的数据查询功效是这些体系好坏的一个主要考量目标。良多年夜型的数据库使用软件公司都有本人的查询器。好比用友、SAP等。可是它们的查询器只用于本身的体系。
偶一日闲来无事,突生开辟一通用东东玩玩的动机,隧有DataGetter查询器的出生。偶之计划为针对使用体系之一般用户,非我等之IT手艺职员也,故计划之时需假定用户不懂得基表布局,不懂得任何SQL语句。
奋战一月,终有小成,然不敢私躲,故借CSDN示之以众,若能对人有所启发,则幸莫年夜焉!
基础观点界说
营业对象:
已存于原始数据库的界说当中。在数据库中基表大抵能够分别为两类,一类是界说实体(对象)的,另外一类是用来界说实体(对象)间干系的。一类营业对象必定能找到对应的基表界说。基表中的每笔记录就代表一个详细的营业对象界说。
特性:
一个特性就反应某对象某方面的特征。特性具有经由过程对象干系举行传送和会聚的特征。特性分为广义特性和狭义特性。
广义特性:
一个广义特性是某对象的间接特征。原始数据库中的每基表的每一个营业字段都是特性,亦可称为基础特性。
狭义特性:
除广义特性外还包含某对象经由过程传送划定规矩和会聚划定规矩所失掉的一切特性和相干一切衍生特性。
传送划定规矩:
关于对象A和B,若其间的对象干系为n:1,则称B的特性能够被传送给A,便可间接视B的特性为A的特性。
会聚划定规矩:
关于对象A和B,若干系为1:n,则称B的特性可被会聚成A的特性。
衍生特性:由单行纪录中一个或多个特性经由必定流动的盘算而推上演的新特性为衍生特性,也称导出特性。该类特性和会聚特性一般都不间接存在于原始数据库中,而是要举行专门的编程来完成。因而可否很好的撑持这两种特性即是判别一个取数工具壮大与否的主要前提。
基于以上观点,可对用户取数举动实质作云云界说:是用户猎取存眷对象的存眷特性值的历程。好比某条约办理职员在某天必要某个条约的实行情形数据,详细包含条约签定日期、承包商称号、条约总金额、累计产生本钱、累计完成工程量、今年累计产生本钱、今年累计工程量等信息。在这个例子中,某个条约就成了用户的存眷对象,而条约签定日期等就成了该存眷对象的存眷特性。在这些特性中,条约签定日期、承包商称号、条约总金额就属于基础特性,而累计产生本钱、累计完成工程量、今年累计产生本钱、今年累计工程量属于衍生特性。
综上所述,我们能够晓得用户必要的特性大概在一个基表中,也有大概散落在分歧的基表中。这就是数据查询器开辟的关头和难点,而基于营业对象D特性办法的两层布局刚好是办理这个成绩的一个好举措。
以上是偶开辟DataGetter的实际基本。DataGetter对用户埋没了数据库的布局信息而以两层布局体例向用户间接展示营业对象和其一切营业特性。用户只需找到营业对象就可以猎取它一切相干的特性,而不必要思索它究竟散落在数据库的哪一个基表中。这年夜小气便了用户的取数。同时,软件还供应了可扩大的衍生存算办法库、会聚盘算办法库,用户如有新的特性必要,则只需依照划定在响应表中举行复杂挂号便可。若碰着对照特别的需求,可经由过程扩大相干办法库来满意必要。以下通该软件的先容来进一步申明基于营业对象-特性两层布局办法开辟数据查询器办法的实践事情道理。
先容
(1)体系框架图
(2)软件利用示例
演示假象场景:某信息体系包括一条约办理体系,该条约办理体系具有挂号条约基础信息、纪录条约每次付出单信息的功效。该体系的原始数据库基表布局以下。
某营业职员想猎取2003年签定的条约及实行的有关情形,详细内容为:条约代码、条约称号、条约签定日期、条约承包商称号、条约金额、条约累计付出金额。在如许的一个取数例子中,对比下面的基表能够晓得本次存眷对象为一切2002年签定的条约,而存眷特性中条约代码、条约称号、条约签定日期、条约累计付出金额为基础特性,条约承包商称号为
传送特性,而条约累计付出金额为会聚特性。这个查询请求的完成历程申明及图示见以下。
第一步:选择所存眷的对象种别,由于条约对象都在条约文件柜中因而选择条约文件柜便可。然后点击下一步。
第二步是选择所存眷的特性。必要注重的是用户必要的累计付出金额已呈现右边在特性列表中,这是由于事后在特性表中举行了挂号,故而用户只必要利用而不必要思索怎样往完成累计值的盘算。选择完成后点击下一步。
第三步是界说对象选择前提。可经由过程鼠标或间接在前提界说框中输出的体例来界说选择前提。
第四步是启动DataGetterSoftware取数引擎。本步操纵仅是点击完成键。一点便完成了取数引擎的启开工作。
第五步是检察取数了局并可对其举行别的操纵,本次案例的了局以下。DataGetterSoftware供应了在体系内举行了局检察和打印的功效,同时能将了局保留为TXT格局文件。使用此功效可在别的诸如EXCEL之类的表格处置软件中读取取数了局便于进一步的剖析、处置、打印等。
(3)DataGetterSoftware特性
1.接纳先辈的Java言语体例而成。
2.可撑持多种数据库。
3.终极用户的零数据库常识请求。
4.终极用户的零操纵培训。
5.终极用户的零用户编程。
6.可提出存在于多表中的相干数据。
7.取数速率快。
8.体系供应了可扩大的多交运算办法库(好比累计、均匀值等)。用户能够象猎取别的基础数据一样复杂的猎取多交运算了局数据而不必要利用运算函数的利用办法。
9.体系供应了可扩大的导出办法库(经由过程已有的数据天生新的成心义的数据,好比日期数据能够导出年份数据)。
10.体系供应了可扩大的干系运算办法库。
11.体系供应了可扩大的特性库。
12.体系可将数据提取了局存储为文本格局。以便满意用户将数据提取了局转进到EXCEL等公用表格处置软件当中完成进一步的处置、排版、打印等的必要。
13.可在体系中以EXCEL网格情势扫瞄提取了局。
14.体系供应了疾速打印提取了局的功效。
先说优点,首先和C,C++这些语言比起来,java很简单,去掉指针的java,非常好理解,自动垃圾回收机制也很好,自从JDK1.5推出以后,性能上又有了很大提高。 |
|