基于soa、rcp的动态对象编辑的方法

文档序号:6603724阅读:402来源:国知局
专利名称:基于soa、rcp的动态对象编辑的方法
技术领域
本发明涉及电力系统自动化,尤其涉及一种基于SOA、RCP的动态对象编辑的方法。
背景技术
在面向对象程序设计中,对象是一个应用程序的基础,所有应用程序都离不开对 对象的操作,不同的业务可以抽象为对不同对象的操作。传统的对对象的编辑方式如附图1所示,不同的对象编辑时均需创建编辑窗口, 布局对象编辑属性,根据对象不同的属性创建相应的编辑器等,编辑时将编辑的结果返回 至对象属性中,编辑完成后根据编辑后对象,调用持久化功能将对象持久化到数据库中。在 实际应用程序开发过程中,通常采用MVC(M0del-View-C0ntr0l,一种设计模式,它强制性的 使应用程序的输入、处理和输出分开,应用程序被分成三个核心部件模型、视图、控制器, 它们各自处理自己的任务)分层设计思想,在很大程度上提高代码的重用性、降低对象间 的耦合度,然而对对象的编辑虽然存在很大的相似性,但当前并没有一个通用的对象编辑 方法,不同对象的编辑过程都需要定制编程。SOA (service-oriented architecture,基于面向服务的体系结构)可以将一个 应用程序的业务逻辑或某些单独的功能封装为服务呈现给客户端,使用时可以根据实际的 需求组合一个或多个服务来构建应用,同时,S0A可以采用不同的语言、不同的平台实现。 RCP (Rich Client Platform,富客户端应用框架)是基于Eclipse项目(Eclipse是个开放 源代码的、基于Java的可扩展开发平台。就其本身而言,它只是个框架和一组服务,用于通 过插件组件构建开发环境。)推出的一个开发富客户端应用框架,目的在于为开发人员提 供一个功能更加强大的、快捷的、可扩展的应用平台。在需求变化异常频繁的今天,用户不 仅要求有丰富的图形用户界面,还希望具有智能更新、跨平台性、可扩展性等特性。Eclipse RCP正好能满足这些需求。在SOA中,人们通常使用浏览器作为展示层,然而在有些场景中, RCP依然是更好的选择,它允许开发人员以插件的形式扩展和构造自己的桌面应用程序。 RCP在以下一些方面更具有优势1、拥有丰富的界面元素,支持在多种平台上构建具有特 定操作系统风格的专业外观;2、快速响应客户端应用,提供流畅的用户体验;3、支持海量 数据处理,有效提高系统的性能;4、支持快捷键导航,方便用户使用和操作;5、支持跨平台 运行及HTTP方式下发及更新,从根本上解决了传统胖客户端程序部署和更新困难的问题。本发明的基于SOA、RCP的动态对象编辑方法具有SOA、RCP的一切优点,对不同对 象的编辑提供了一个通用的解决方案。

发明内容
为克服现有技术的缺陷,本发明要解决的技术问题是提供了一种对不同对象通用 的基于SOA、RCP的动态对象编辑的方法。本发明的技术方案是这种基于SOA、RCP的动态对象编辑的方法包括以下步骤(1)通过S0A服务获取到对象;(2)根据传入的对象获取其对象属性,生成对象编辑窗口, 同时根据属性的配置信息里的属性编辑器类型分配相应的编辑器;(3)为适应不同类型属 性的特殊需要,在对象传入时可以对对象的属性重新指定编辑器,在编辑器编辑属性值时 提供编辑前、编辑后事件,满足各种类型属性的编辑需求;(4)编辑器中对属性字段编辑修 改;(5)编辑结果自动更新到对象中,对象保存时根据配置信息对编辑信息自动进行属性 的各种验证操作,其中对象的保存操作提供了保存前、保存后事件,完全满足不同对象各种 编辑需求;(6)调用S0A服务将对象持久化到数据库中。该方法能适用于不同的应用,同时兼具跨平台、可以有效的提高代码的移植性、重 用性、大大节省系统的研发时间及成本,为不同应用中对不同对象的编辑提供了一个通用 的解决方法。


图1为传统的对对象的编辑方法;图2为本发明的对对象的编辑方法。
具体实施例方式动态对象编辑方法对不同对象的编辑提供了一个通用的解决方案,它主要基于 SOA、RCP技术,严格按照高内聚、低耦合的原则,将对对象的操作进行封装。动态对象编辑 方法的核心思想体现在其动态性上,能根据不同对象的属性动态生成相应的编辑界面,根 据不同属性的配置信息自动匹配相应的属性编辑器。在使用时只需传入具体的对象,即可 完成对一个对象的修改编辑操作。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。动态对象编辑方法面向不同的对象,即编辑的对象不确定、对象的属性不确定。如 附图2所示,这种基于S0A、RCP的动态对象编辑的方法包括以下步骤(1)通过S0A服务获 取到对象;(2)根据传入的对象获取其对象属性,生成对象编辑窗口,同时根据属性的配置 信息里的属性编辑器类型分配相应的编辑器;(3)为适应不同类型属性的特殊需要,在对 象传入时可以对对象的属性重新指定编辑器,在编辑器编辑属性值时提供编辑前、编辑后 事件,满足各种类型属性的编辑需求;(4)编辑器中对属性字段编辑修改;(5)编辑结果自 动更新到对象中,对象保存时根据配置信息对编辑信息自动进行属性的各种验证操作等, 其中对象的保存操作提供了保存前、保存后事件,完全满足不同对象各种编辑需求;(6)调 用S0A服务将对象持久化到数据库中。所述步骤(2)具体为把常用的编辑器功能抽象出 一个基类,常用的编辑器继承基类实现特定的类,基类中使用工厂模式实现一个根据编辑 器种类生成一个特定编辑器类实例的方法。使用时,根据对象配置信息中的编辑器类型,调 用这个方法生成特定编辑器实例。动态对象编辑方法能适用于不同的应用,同时兼具跨平 台、可以有效的提高代码的移植性、重用性、大大节省系统的研发时间及成本,为不同应用 中对不同对象的编辑提供了一个通用的解决方法。本发明的优点如下1、通用性,能应用于不同的系统;2、跨平台,使用soa方式获取对象信息,可以和任何开发平台配合使用,如.net,
4java, delphi 等等;3、易用性,编辑时只需传入待编辑的对象,节省系统的研发时间及成本;4、稳定性强,当对象发生变化时,只需要修改对象配置信息,编辑窗口不需要作任 何修改;5、灵活性强,提供了编辑前、编辑后、保存前、保存后等事件,在默认的编辑界面不 符合要求时,可以由开发人员定制处理。以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依 据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明 技术方案的保护范围。
权利要求
基于SOA、RCP的动态对象编辑的方法,其特征在于,包括以下步骤(1)通过SOA服务获取到对象;(2)根据传入的对象获取其对象属性,生成对象编辑窗口,同时根据属性的配置信息里的属性编辑器类型分配相应的编辑器;(3)为适应不同类型属性的特殊需要,在对象传入时可以对对象的属性重新指定编辑器,在编辑器编辑属性值时提供编辑前、编辑后事件,满足各种类型属性的编辑需求;(4)编辑器中对属性字段编辑修改;(5)编辑结果自动更新到对象中,对象保存时根据配置信息对编辑信息自动进行属性的各种验证操作,其中对象的保存操作提供了保存前、保存后事件,完全满足不同对象各种编辑需求;(6)调用SOA服务将对象持久化到数据库中。
2.根据权利要求1所述的基于SOA、RCP的动态对象编辑的方法,其特征在于所述步 骤(2)使用了根据不用的配置信息生成相应编辑器的方法,即把常用的编辑器功能抽象出 一个基类,常用的编辑器继承基类实现特定的类,基类中使用工厂模式实现一个根据编辑 器种类生成一个特定编辑器类实例的方法,当使用时,根据对象配置信息中的编辑器类型, 调用这个方法生成特定编辑器实例。
全文摘要
公开了一种基于SOA、RCP的动态对象编辑的方法,包括以下步骤(1)通过SOA服务获取到对象;(2)根据传入的对象获取其对象属性,生成对象编辑窗口,并根据属性的配置信息里的属性编辑器类型分配相应的编辑器;(3)为适应不同类型属性的特殊需要,在对象传入时可以对对象的属性重新指定编辑器,在编辑器编辑属性时提供编辑前、编辑后事件,满足各种类型属性的编辑需求;(4)编辑器中对属性字段编辑修改;(5)编辑结果自动更新到对象中,对象保存时根据配置信息对编辑信息自动进行属性的各种验证操作,对象的保存操作提供了保存前、保存后事件,完全满足不同对象各种编辑需求;(6)调用SOA服务将对象持久化到数据库中。
文档编号G06F9/44GK101853167SQ20101019448
公开日2010年10月6日 申请日期2010年5月28日 优先权日2010年5月28日
发明者王龙刚, 黄小文 申请人:北京中恒博瑞数字电力科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1