数据处理方法和数据处理装置的制造方法

文档序号:9865214阅读:398来源:国知局
数据处理方法和数据处理装置的制造方法
【技术领域】
[0001 ]本发明设及软件开发技术领域,具体而言,设及一种数据处理方法和一种数据处 理装置。
【背景技术】
[0002] 目前,在各类软件系统的设计开发过程中,为了节约研发及维护成本,系统的柔 性、灵活性,模块的复用性、复用程度一直是设计和编码人员努力去提升的指标之一,而型 别抽象则是最重要,也是最常用的思路。针对目前普遍使用的若干面向对象语言(如:C++, Java,C#等),利用面向对象语言的特点:派生、继承,多态、重载等配合特定设计模式实现; 同时各类开发语言也加入了泛型特性,帮助开发人员提升代码的灵活性和复用性。
[0003] 运些面向对象语言允许开发者使用继承和向上映射(化化sting)进行型别抽象, 并提供相应的转型函数,或强制向下转型。泛型则将类型参数化,允许开发者对代码模块进 行型别注入,在保证类型安全的基础上提高了代码复用程度。
[0004] W上特性在实际开发过程中极大程度的增加了代码复用性,但仍然存在一些局 限。使用化va语言利用泛型特性编写了一个数据存取模块类class EntityDAOa〉,使用时, W派生业务实体对象"用户"(User)为例,首先需要在代码中定义"用户"User类型,其次要 将User类型传入EntityDAO<User〉。前端模版需要根据不同的派生业务实体对象组装、制 作,如图1所示,"用户编辑界面","订单编辑界面",即业务对象的型别特性需要在代码里表 现,尽管已经进行了抽象提炼:型别参数化,显示模版化,但是在一定程度上还是存在代码 的重复编写。
[0005] 而且信息系统中的派生业务实体对象抛开特定的业务功能,基本上都会包含列 表,编辑,查看等用户界面,并能够进行持久化存储,非信息系统很少包括列表,编辑,查看 等用户界面。针对上述通用功能需求,目前有很多产品框架提供了解决方案。在J2EE体系 内,前端会通常会使用模版化的思路,如Struts框架,后端会使用OR映射框架,如 化bernate,对W上代码复用设计,都是基于泛型或向上转型实现。如果在标准产品进行客 户化定制或项目需求变更过程中遇到需要扩展派生业务实体对象的情况,我们随之也需要 在代码层面进行实体的定义,还需要在功能模块添加部分雷同代码,浪费了资源,同时也降 低了开发出的软甲产品的灵活性。
[0006] 因此,如何提高软件产品在开发过程中代码的复用性,W及提升开发出的软件产 品的灵活性产品本身的灵活性成为亟待解决的问题。

【发明内容】

[0007] 本发明正是基于上述问题,提出了一种新的技术方案,不仅可W提高软件产品在 开发过程中代码的复用性,而且可W提升开发出的软件产品的灵活性产品本身的灵活性。 [000引有鉴于此,本发明的一方面提出了一种数据处理方法,包括:定义系统的抽象数据 实体对象、派生业务实体对象、所述派生业务实体对象的业务类型描述和多个业务属性的 业务属性描述;在所述系统的运行时刻,判断所述系统的业务需求是否发生变动;在判断结 果为是时,修改所述派生业务实体对象的业务类型描述和业务属性描述。
[0009] 在该技术方案中,由于对派生业务实体对象操作时,其业务类型的特性是隐藏的, 而派生业务实体对象的业务类型描述和业务属性描述在系统运行时才能够体现具体的特 征,通过上述技术方案,在系统开发过程中,只需要使用一套针对抽象数据实体对象的代码 进行适配即可,能够显著降低了系统在开发时代码的冗余程度,提高了代码的复用性及开 发效率;而且系统开发完成后,若派生业务实体对象的需求发生变动,在系统的运行时刻对 派生业务实体对象的业务类型描述和业务属性描述进行修改,实现了对派生业务实体对象 的运行时刻业务扩展,避免了相关技术进行业务扩展中对代码层面的变动和编译,从而在 软件产品的开发过程中有效地提高了代码复用性,进而大大增加了开发出的产品本身的灵 活性,降低了产品交付及后续需求变更维护带来的工作量。
[0010] 在上述技术方案中,优选地,所述抽象数据实体对象包括通用数据集合,所述通用 数据集合用于存放所述多个业务属性,所述多个业务属性中的每个业务属性具有业务属性 描述和业务数据值;所述派生业务实体对象包括:业务类型描述对象、业务属性描述对象。
[0011] 在该技术方案中,抽象数据实体对象的通用数据集合用于存放派生业务实体对象 的多个业务属性,每个业务属性具有业务属性描述和业务数据值,从而使通用数据集合能 够承载不同类型的业务属性描述和业务数据值,其中,业务数据值可W为字符、整形、浮点 等语言型别,为了能够使业务数据值兼容不同语言型别,需要封装抽象,如果使用化va语言 可直接用Object基数据类型。
[0012] 另外,业务类型描述对象并非是定义的业务类型描述,业务类型描述对象是一个 空的能够装载描述信息的结构,不包含数据。同理,业务属性描述对象并非是定义的业务属 性描述,业务属性描述对象指的是一个空的能够装载描述信息的结构,不包含数据。
[0013] 在上述任一技术方案中,优选地,所述定义系统的抽象数据实体对象、派生业务实 体对象、所述派生业务实体对象的业务类型描述和多个业务属性的业务属性描述的步骤之 后,包括:根据已知的当前业务属性描述中的属性名称,在所述多个业务属性中获取目标业 务属性,并根据所述目标业务属性获取对应的业务属性描述和业务数据值。
[0014] 在该技术方案中,根据已知的当前业务属性描述中的属性名称,在多个业务属性 中获取对应的目标业务属性,从而获取其业务属性描述和业务数据值,进而实现派生业务 实体对象业务数据的存取封装,避免了相关技术中的完全牺牲代码柔性为代价来达到派生 业务实体对象的扩展,而本申请则不受约束,其本质上就是将属性名称作为Key,从抽象数 据实体对象内的通用数据集合(Map)中取得相应的业务属性。
[0015] 在上述任一技术方案中,优选地,所述定义系统的抽象数据实体对象、派生业务实 体对象、所述派生业务实体对象的业务类型描述和多个业务属性的业务属性描述的步骤之 后,包括:在所述系统的运行时刻,将所述派生业务实体对象的业务类型描述赋值到所述业 务类型描述对象中,将所述派生业务实体对象的业务属性描述赋值到所述业务属性描述对 象中;将赋值后的所述业务类型描述对象和所述业务属性描述对象注入到所述抽象数据实 体对象中。
[0016] 在该技术方案中,抽象数据实体对象、业务类型描述对象和业务属性描述对象在 定义时均是空的,不具有任何业务意义,通过将业务类型描述的数据赋值到业务类型描述 对象中,将赋值后的业务类型描述对象注入到抽象数据实体对象中,w及将业务属性描述 的数据赋值到业务属性描述对象中,将赋值后的业务属性描述对象注入到抽象数据实体对 象中,从而完成系统整个业务实体对象的派生。
[0017] 另外,将赋值后的业务属性描述对象注入到抽象数据实体对象中的步骤,具体包 括:将赋值后的业务属性描述对象注入到业务属性中,将业务属性注入到抽象数据实体对 象的通用数据集合中。
[0018] 在上述任一技术方案中,优选地,所述派生业务实体对象的业务类型描述和业务 属性描述存储在配置文件中或数据库中;修改所述派生业务实体对象的业务类型描述和业 务属性描述的步骤,具体包括:修改所述配置文件或所述数据库中的所述派生业务实体对 象的业务类型描述和业务属性描述。
[0019] 在该技术方案中,通过对配置文件或者数据库中的派生业务实体对象的业务类型 描述和业务属性描述进行修改,W实现系统在运行时的扩展。还可W结合缓存加速的方式, 避免了相关技术中的对代码层面的变动,从而有效地提高了代码开发效率。
[0020] 本发明的另一方面提出了一种数据处理装置,包括:定义单元,用于定义系统的抽 象数据实体对象、派生业务实体对象、所述派生业务实体对象的业务类型描述和多个业务 属性的业务属性描述;判断单元,用于在所述系统的运行时刻,判断所述系统的业务需求是 否发生变动;处理单元,用于在判断结果为是时,修改所述派生业务实体对象的业务类型描 述和业务属性描述。
[0021] 在该技术方案中,由于对派生业务实体对象操作时,其业务类型的特性是隐藏的, 而派生业务实体对象的业务类型描述和业务属性描述在系统运行时才能够体现具体的特 征,通过上述技术方案,在系统开发过程中,只需要使用一套针对抽象数据实体对象的代码 进行适配即可,能够显著降低了系统在开发时代码的冗余程度,提高了代码的复用性及开 发效率;而且系统开发完成后,若派生业务实体对象的需求发生变动,在系统的运行时刻对 派生业务实体对象的业务类型描述和业务属性描述进行修改,实现了对派生业务实体对象 的运行时刻业务扩展,避免了相关技术进行业务扩展中对代码层面的变动和编译,从而在 软件产品的开发过程中有效地提高了代码复用性,进而大大增加了开发出的产品本身的灵 活性,降低了产品交付及后续需求变更维护带来的工作量。
[0022] 在上述任一技术方案中,优选地,所述抽象数据实体对象包括通用数据集合,所述 通用数据集合用于存放所述多个业务属性,所述多个业务属性中的每个业务属性具有业务 属性描述和业务数据值;所述派生业务实体对象包括:业务类型描述对象、业务属性描述对 象。
[0023] 在该技术方案中,抽象数据实体对象的通用数据集合用于存放派生业务实体对象 的多个业务属性,每个业务属性具有业务属性描述和业务数据值,从而使通用数据集合能 够承载不同类型的业务属性描述和业务数据值,其中,业务数据
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1