依据字段名称储存数据的系统及其方法技术方案

技术编号:5129602 阅读:193 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种依据字段名称储存数据的系统及其方法,其通过提供包含属性(property)的容器(container)后,将数据集中各字段的数据储存到属性名称与数据的字段名称相同的属性中的技术手段,可以减少撰写存取各属性的程序代码,并达成减少调试(debug)的工作量以及提高开发效率的技术功效。

【技术实现步骤摘要】

本专利技术涉及一种数据储存系统及其方法,特别涉及一种。
技术介绍
类别(class)是一种对象导向的程序语言的构造,其定义同一类所有对象共同的 属性(property)/变量和方法(method)/函式的蓝图或原型。当建立一个类别之后,在使 用之前必须对类别进行初始化。当初始化类别后,就建立了一个这种类别的对象,接着操作 系统会为类别定义的属性分配内存。之后便可以呼叫(call)对象的方法来完成特定的功 能。在大部分的情况下,类别会被开发者封装(encapsulation),封装是将属性以及 处理属性的程序(procedure)组合起来,仅对外公开接口(interface),达到信息隐藏 (information hiding)的目的。也就是说,对于某个类别的使用者而言,只能以该类别所提 供的接口来使用该类别,并无法直接存取该类别中的数据。因此,类别中的各个属性通常会 有一个设定的接口(设定函式)以及一个读取的接口(读取函式)。其中,设定函式的函式 名称通常为字符串「set」加上属性名称,读取函式的函式名称通常为字符串「get」加上属 性名称。在撰写程序时,为了要将数据存入如图IA所示的类别「SoftwareUpBean」的属 性中,则势必要如图IB所示,撰写呼叫设定函式460的程序代码,如「setSff_VERSI0N_ LANG()」、「setSff_BUILD_DATE ()」、「setSWBULID_N0()」、「setSW_VERSI0N()」等,而要读 出类别「SoftwareUpBean」的属性中的数据时,也需要撰写呼叫读取函式470的程序代 码,如「getSW_VERSI0N_LANG()」、「getSW_BUILD_DATE()」、「getSWBULID_N0()」、「getSW_ VERSI0N0」等,如此一来,当需要存取某个类别中的大量属性时,将会撰写出一大串都是以 「set」开头的设定函式或是一大串都是以「get」开头的读取函式。综上所述,可知现有技术中长期以来一直存在存取属性时,需要为各个属性分别撰写相似性极高的程序代码的问题,因此有必要提出改进的技术手段,来解决此一问题。
技术实现思路
有鉴于现有技术存在需要为各个属性分别撰写相似性极高的程序代码的问题,本专利技术遂提供一种,其中本专利技术所提供的依据字段名称储存数据的系统,至少包含储存媒体,用以提供容器(container)及数据集,容器包含至少一属性及对应属性的至少一函式,数据集包含至 少一字段,字段用以储存数据,其中,属性的属性名称与字段的字段名称相同;数据读取模 块,用以由数据集中读取数据;执行模块,用以执行属性名称与字段名称相同的属性所对应 的函式,使数据储存至属性中。本专利技术所提供的依据字段名称储存数据的方法,其步骤至少包括提供包含至少一属性的容器;提供包含至少一字段的数据集;由数据集中读取字段名称与属性的属性名 称相同的字段所储存的数据;执行属性名称与字段名称相同的属性所对应的函式,使函式 储存数据至属性中。本专利技术所提供的系统与方法如上,与现有技术之间的差异在于本专利技术通过提供包 含属性的容器后,将数据集中各字段的数据储存到属性名称与数据对应的字段名称的属性 中,借以解决现有技术所存在的问题,并可以达成减少调试(debug)的工作量以及提高开 发效率的技术功效。附图说明图IA为本专利技术实施例所提的容器的程序代码示意图。图IB为本专利技术实施例所提的存取容器包含的属性的程序代码示意图。图2为本专利技术所提的依据字段名称储存数据的系统架构图。图3为本专利技术实施例所提的数据表的记录示意图。图4为本专利技术实施例所提的数据表的数据结构示意图。图5为本专利技术所提的依据字段名称储存数据的方法流程图。图6为本专利技术实施例所提的容器的函式搜寻的程序代码示意图。主要组件符号说明110储存媒体150数据读取模块160函式搜寻模块170执行模块190型态转换模块200数据结构300数据表302记录410属性420函式460设定函式470读取函式600程序代码具体实施例方式以下将配合图式及实施例来详细说明本专利技术的特征与实施方式,内容足以使任何 本领域技术人员能够轻易地充分理解本专利技术解决技术问题所应用的技术手段并据以实施, 借此实现本专利技术可达成的功效。以下先以图2本专利技术所提的依据字段名称储存数据的系统架构图来说明本专利技术 的系统运作。如图2所示,本专利技术的系统含有储存媒体110、数据读取模块150以及执行模块170。其中储存媒体110通常为存储器,但本专利技术并不以此为限。储存媒体110负责储存数据集,借以提供数据集给后续模块进行处理,储存媒体 110所储存的数据集通常为一笔以上的相同来源的记录(record),每笔记录中包含至少一 个字段(field),各个字段分别有相对应的字段名称,且各个字段分别储存一项数据(在本 专利技术中,以下将以「数据与字段名称对应」的相似描述来说明各字段所储存的数据与该字段 的字段名称的对应关系)。其中,若数据集包含多笔记录,则会因为各笔数据的来源相同,故 各笔记录所包含的字段会相同。一般而言,储存媒体110所储存的数据集由本专利技术的外部程序至如图3所示的特 定的数据表300中检索出来,在此情况下,各笔记录中的字段的字段名称会与由数据表中 所检索出的数据所在的字段的字段名称相同,例如,当数据集为数据表300中头四个字段 的数据,则各笔记录中将包含四个字段,且记录所包含的四个字段的字段名称会分别与数 据表300中的头四个字段的字段名称相同。但本专利技术所提的数据集并不以由特定数据表中 检索出的数据为限,也包括其它方式例如由其它外部程序将数据储存为数据集等。储存媒体110也负责储存容器(container),借以提供容器给后续模块,储存媒体 110所储存的容器包含至少一个属性以及与属性相对应的函式,其中,与同一个属性对应的 函式可能不只一个,例如读取属性的函式(以「get」为开头的函式)、设定属性的函式(以 「set」为开头的函式)等。—般而言,储存媒体110所储存的容器为程序语言中的「类别(class)」,但本专利技术 并不以此为限。例如,在「Java」的程序语言中,对象「javabean」即可以被当作是一个容器, 同样的,本专利技术所提及的程序语言也不以「Java」为限,例如在程序语言「C++」中,也可以自 定的对象来作为容器。特别值得一提的是,容器中的属性的属性名称会涵盖数据集包含的记录中的各字 段的字段名称,也就是说,在数据集中的各字段的字段名称都可以在容器中找到属性名称 相同的属性。例如,数据集为图3的数据表300中的特定的记录302,则该特定的记录302 至少包含四个字段,假设各字段的字段名称依序为「SW_VERSION_LANG」、「SW_BUILD_DATE」、 rSff_BULID_N0j以及「SW_VERSI0N」则如图IA所示的名称为「SoftwareUpBean」的容器将 会包含「SW_VERSION_LANG」、「SW_BUILD_DATE」、「SW_BULID_N0」以及「SW_VERSI0N」等属性 410。数据读取模块150负责由储存媒体110所提供的数据集中读取一笔记录,并由被 读出的记录中读出字段名称与储存媒体110所提供的本文档来自技高网
...

【技术保护点】
一种依据字段名称储存数据的方法,其特征在于,该方法至少包含下列步骤:提供包含至少一属性的一容器(container);提供包含至少一字段的一数据集;由该数据集中读取一字段名称与该属性的一属性名称相同的该字段所储存的一数据;及执行属性名称与该字段名称相同的该属性所对应的一函式,使该函式储存该数据至该属性中。

【技术特征摘要】
一种依据字段名称储存数据的方法,其特征在于,该方法至少包含下列步骤提供包含至少一属性的一容器(container);提供包含至少一字段的一数据集;由该数据集中读取一字段名称与该属性的一属性名称相同的该字段所储存的一数据;及执行属性名称与该字段名称相同的该属性所对应的一函式,使该函式储存该数据至该属性中。2.如权利要求1所述的依据字段名称储存数据的方法,其特征在于,该方法在执行该 函式的步骤前,还包含在该容器中搜寻该函式的步骤。3.如权利要求1所述的依据字段名称储存数据的方法,其特征在于,该方法在该执行 该函式的步骤前,还包含判断该属性的数据型态,并转换该数据的数据型态为该属性的数 据型态的步骤。4.一种依据字段名称储存数据的系统,其特征在于,该系统至少包含一储存媒体,用以提供一容器及一数据集,该容器包含至少一属性及对应该属性的至 少一函式,该数据集包含至...

【专利技术属性】
技术研发人员:邱全成方慧
申请(专利权)人:英业达股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1