




已阅读5页,还剩59页未读, 继续免费阅读
(电路与系统专业论文)基于java平台的绝缘子数据管理系统研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆大学硕士学位论文 中文摘要 i 摘 要 绝缘子及瓷套是变电站运行的重要组成设备,起着支撑导线和绝缘作用。对 绝缘子的有效管理和监控关系着整个电网安全。随着国家对电力系统信息化的投 入加大,实现绝缘子的高效管理变得更加重要。因此,开发具有自主知识产权的 绝缘子数据管理系统具有相当现实和长远的意义。 整个绝缘子信息管理系统的开发包括三个大的部分:系统 ui 设计、后台数据 库管理和系统核心业务设计。 系统 ui 设计主要是为了提高软件系统的可用性,降低工作人员的使用难度, 采用完全的图形化界面来实现信息系统的管理和操作。系统图形化界面让系统操 作人员通过点击设备了解整个变电站的所有设备的当前状态,同时提供对供电局 所辖变电站分布的了解,以及对变电站信息的可视化管理等。系统的 ui 设计是采 用 java 编程语言,并基于 netbeans 开发平台所提供的模块化套件达到快速稳定的 系统开发。 后台数据库管理部分主要完成了绝缘子数据数据库的设计,数据持久化设计 等操作。 数据库采用了系统使用单位提供的正版 sql server2000 数据库管理系统。 在数据库设计方面,经过分析变电站绝缘子信息系统涉及到的各个对象,找到实 体之间的 e- r 关系,再根据映射关系设计相对应的实体,完成数据库系统的设计。 在数据持久化设计方面,对面向对象技术与关系数据库理论进行了深入探讨,针 对对象、关系的特点重点研究了它们之间的映射策略。通过对现行各种持久化技 术的比较,选择了具有高效率高稳定性的 hibernate 持久层框架。 系统核心业务设计主要完成了网络功能、分级权限、可扩展能力、台帐功能、 数据导入功能分析与设计。网络功能主要是要实现网络共享的功能。分级权限是 完成系统使用人员的权限分级。可扩展能力是完成将来对新增设备或变电站的数 据管理。台帐功能完成完成对 35kv 以上的绝缘子设备的台帐管理,包括检索、 记录、统计等操作。数据导入功能则主要是完成系统与超声波探伤仪的接口和数 据交换。系统核心业务的设计也是采用 netbeans 平台提供的模块套件开发方式完 成对各个核心业务模块的封装。 整个软件系统经过较长时间的调试,能正常稳定的运行于 windows 和 linux 操作平台,此系统现已交付公司使用。从公司的反馈信息来看,系统工作稳定、 界面美观,完成了预先提出的基本功能。 关键词:绝缘子,数据库,netbeans,hibernate,核心业务 重庆大学硕士学位论文 英文摘要 ii abstract insulators and porcelain sets are i mportant component of substation, it plays a supporting for wire and insulation role. it is important for the security of whole power network to manage and monitor the state of insulators effectively. as the increasing investment to the informationization of power system by the state, it becomes more important for efficient management to insulators. therefore, developing insulator information management system with self- owned intellectual property has a very realistic and long- term significance. the whole insulator information management system consists of three major parts: ui design of system, back- end database management and design of core business. ui design of the system is mainly to improve the availability of software systems and make it easy to use for system users, it is designed to use a complete graphical interface to achieve the management and operations of information systems. system operators can know about the whole of the current state of all devices by clicking on the substation equipment, system operators can know about the distribution state of substation to the power supply bureau under the jurisdiction and other information of the substation also. the ui system is designed using java programming language and based on a module suite providing by netbeans development platform, this can make the development fast and stably. back- end database management designing consists of the design of insulator database, data persistence design and so on. legal version sql server 2000 database management system is provided by the company. in database design, after analyzing all the subjects which have relationship with the transformer substations in the system, an e- r graph of these entities can be easily obtained, which is especially important to the database designing. apart from that, in according with their mapping relationships, the corresponding entities will be designed and then the omitted database system is completed. in data persistence design, during the research, firstly object- oriented technology as well as relational database theory is discussed deeply, the mapping strategy between them have been paid more attention to. the mapping principle and realization method have been sum up. the mainstream theory of the persistence technology is illustrated and the conclusion is that the hibernate is a better selection in the persistence realization compared with other persistence technologies. the design of core business of the system consists of the design and analysis of the 重庆大学硕士学位论文 英文摘要 iii following parts: network function, classification authority, scalable capacity, the accounting function, the import of data function. network function is mainly to achieve the network share function. classification authority is to complete the classification of the users of this system. scalable capacity is the completion of data management if new equipment or substation will be added. the completion of the accounting function is to complete accounting management of insulator devices which belong to more than 35kv substation, including retrievaling, recording, doing statistics and other operations. the import of data function is mainly to complete the exchanging between the system and ultrasonic flaw detector. the design of core business is also based on the module suit provided by netbeans development platform, this can complete the encapsulation of all parts of core business modules. by debugging for a long time, the whole software can normally run on the windows and linux operating system, and it has been delivered to the company. according to the feedback from the company, the system has the main characteristics of stable operation and nice interface, and can complete the basic functions required in advance. key words: insulator, database, netbeans, hibernate, core business 重庆大学硕士学位论文 1 绪 论 1 1 绪 论 1.1 课题来源及意义 1.1.1 课题来源与背景 二十一世纪是信息的时代,它为中国电力带来了前所未有的机遇和挑战。作 为国家基础设施产业的电力工业,它正由传统工业向高度集约化、高度知识化、 高度技术化工业转变。随着电力企业设备维修制度与故障分析方法的不断改革和 深化,传统的电网信息管理方法已经难以适应其要求,迫切需要全新的网络化的 变电站信息管理系统,以满足电力行业的发展需求。 广东省佛山市南海供电局是广东电网公司下属的特大型企业,负责 a 区、b 区、c 区、d 区、e 区的电力供应及提供相关服务。其下属生产单位 变电一部负 责 a 区、b 区、d 区变电站的共 87 个 35kv及以上变电站的运行管理。绝缘子及 瓷套是变电站运行的重要组成设备,起着支撑导线和绝缘作用。如果绝缘子在制 作过程中配方不当,工艺流程中原料混合不均匀。均容易形成瓷件内部缺陷造成 韧性降低。为加强变电站绝缘子的运行管理,该部于 2008 年五月开展变电站瓷质 绝缘子探伤技术的研究。 为支持该技术的推广应用, 特委托重庆大学通信学院 2202 实验室开发变电站绝缘子数据管理系统软件。 1.1.2 课题建设目标与意义 本管理系统的建设目标分为以下四点: 建成变电站绝缘子设备运行管理系统平台, 实现对变电站站内 35kv以上绝 缘子的设备进行台帐管理。通过本系统的建设,制定变电站绝缘子的设备运行管 理系统的标准,建成设备的数据中心,实现设备信息以及库存信息的共享;充分 利用各种统计、查询等方法和工具,全方位、多层次的管理、分析设备和库存的 变动,以利及时采取措施。通过权限控制,进行分级、分块管理和维护,达到信 息资源有序共享。 为了提高软件系统的可用性,降低工作人员的使用难度,本系统采用完全 的图形化界面来实现信息系统的管理和操作。用户可以通过点击设备了解设备当 前状态数据;系统将以不同颜色状态来反映设备当前的状态(可运行、加强巡视、 库存不足) ;每当需要新增设备或者变电站时,只需要从工具栏将表示设备的图形 拖动到所需位置,并在加上标识后保存,系统会自动建立新增的设备或变电站数 据到数据库。 建成智能化的数据管理系统,在本系统中,不仅可以实现对设备台帐数据 进行准确的查询、统计的功能,还可实现以下的功能: 根据设备数据自动分析设 备目前的状态,并在设备可能出现缺陷问题时及时提醒工作人员进行必要的维护 重庆大学硕士学位论文 1 绪 论 2 工作;良好地支持超声波探伤仪的分析软件,能够对超声波探测仪提供的波形进 行存储。 与超声波探伤仪良好的接口,系统要求支持从 usb 或串口 com 对超声波 探伤仪的数据进行导入。数据导入后用户只需要根据系统提供的模版输入必要的 信息,相关数据就会自动关联到某设备,并加入到数据库中去,整个过程完全自 动化。 1.2 国内外研究现状分析 我国的电力行业信息化建设起步较早,但由于电力行业一直处于相对垄断地 位,电力行业的关注点一直处于如何贯彻体制改革和如何提高产能方面,所以整 个电力行业的信息化应用水平不高,整个行业缺乏统一性标准。 目前电力行业在信息化建设方面存在三大结构性问题: 首先,基础硬件投入偏多,软件投入相对不足。 目前,我国电力行业对于信息化建设的投入还处在大规模基础硬件投入阶段, 现有网络和信息资源的利用不够。很多电力企业对于信息化建设还存在的误区, 倾向于买些“ 看得见、摸得着的东西” ,整个电力行业对硬件的投入相对较多,而对 软件的投入则偏少,一个成熟的信息化市场,硬件、软件、it 服务的投入比例应 为 5:3:2。 没有软件系统的支持,硬件系统无法发挥出应有的效用,因此,在信息 化建设方面,电力行业的企业在信息化建设上,要坚决摒弃“ 信息化建设就是买设 备” 的想法,做到统筹规划,避免信息化资源的盲目投入和浪费。 其次,专业系统众多,系统管理软件缺乏。 我国的电力行业信息化建设起步较早,但由于存在行业垄断,电力行业的主 要注意力多放在如何提高产能和安全生产上,目前对于电力行业的管理软件普遍 集中在电力行业公司内部互联通讯方面,对于电力行业中的硬件方面的管理软件 的建设和投入较少。因此,虽经过多年的信息化建设,目前整个电力行业仍处于 专业系统众多而系统管理软件缺乏的局面,对于电力企业的管理决策的支持能力 则严重不足。 最后,系统孤立,信息无法集中为资源。 由于整个电力行业一直处于变革之中,在整个行业中,大多数电力集团公司 所属电厂的信息系统千差万别,由于没有采用统一的信息编码,致使集团内部各 信息系统数据和信息的直接共享和交换十分困难。目前在国内也有关于绝缘子污 秽信息的检测和管理系统,但其资源的共享也只限于使用该系统的用户之间,对 于整个电力行业的各个部门而言仍然是屏蔽的。所以建立一个具有全局资源共享 的绝缘子数据管理系统是必要的。 重庆大学硕士学位论文 1 绪 论 3 因此在下一阶段,电力信息化的重点之一就是信息技术的集成和综合利用。 总之,电力行业信息化建设的路还需要走很长一段时间,面对变革,电力行 业需要勇气,抓住变革的时机,为迎接整个电力行业的市场化和规范化打好基础, 做好准备。 1.3 论文主要研究内容和本文的章节安排 1.3.1 论文主要研究内容 绝缘子的信息化管理是广东省佛山市南海供电局电力系统信息化的重要组成 部分。通过网络实现一个辖区内变电站的统一管理,对每个变电站绝缘子工作状 况的及时获取和分析是绝缘子信息管理系统的重要任务。 由于各变电站的配电线路十分复杂,为了实现绝缘子的有效管理,系统采用 图形化的界面,方便用户使用。系统初期则必须人工绘制变电站的配电线路图, 由于变电站线路复杂,特别是 500kv 以上的中大型变电站,方便的绘图功能和智 能的输电线路连接变得尤为重要,这是本课题 ui 界面设计中的重要任务。为了方 便用户的管理变电站配电线路,分别采用军旗状和树状的配电线路呈现方式也是 ui 设计的重点。作为一个数据管理系统,数据的检索也是其中一个很重要的部分, 所以数据检索界面的设计以后最终打印报告生成等界面都是 ui 设计的研究内容。 数据库的设计是论文研究的第二个重点,首先是数据库的选型,它要符合单 位的网络环境和系统环境等的要求,再者是数据库的设计,它包括的研究内容有: 快速稳定的数据库的设计与实现;hibernate 技术持久化的实现与存储过程 api 设 计,包括:事务处理、线程处理、hibernate 连接、数据操作 api 的设计等;服务 端系统数据库与客户端软件交互的设计与实现。 论文研究的第三个部分是系统核心业务部分,这部分的主要研究对象是绝缘 子对象图形化管理、设备台帐管理、数据检索与统计管理、探伤仪数据导入管理、 手工数据录入管理、维护记录管理、数据比较管理、设备评级管理、数据存取管 理等模块。这些模块对基础数据、业务数据、其它系统数据进行业务处理,部分 模块之间有相互衔接的接口。 1.3.2 本文章节安排 本文围绕电力系统信息化中变电站绝缘子设备运行管理系统平台进行设计, 给出符合客户要求的变电站绝缘子设备运行管理系统的设计与实现。本文的组织 结构如下: 第一章,综述了目前电力行业信息化的状况,以及绝缘子数据管理系统的研 究状况,给出了绝缘子管理系统开发的必要性解释。 第二章,分析了绝缘子数据管理系统的需求情况,并根据需求情况给出了系 重庆大学硕士学位论文 1 绪 论 4 统的整体框架和模块构造,同时对开发系统工具、语言环境以及运行环境进行了 选型。 第三章,对本管理系统的系统界面进行了设计,并且介绍了开发系统界面的 开发平台。最后详细介绍了系统界面中的具有代表意义模块的详细实现。 第四章,对本系统的核心业务层进行了分析和设计的介绍。将核心业务层分 几个大的模块,分别介绍了在 netbeans 开发平台下各个模块作为模块套件中的子 模块的代码开发方式。 第五章,对数据管理层进行了介绍,其中包括对数据库的分析与设计以及对 数据持久层模块的详细设计和代码编写。 第六章,完成了整个绝缘子数据管理系统的整个性能测试,对系统测试的方 法和细节进行了详细的介绍。 第七章,论文总结。 1.4 本人的主要工作 在本系统的整个设计与实现过程中本人所完成的主要工作是: 项目初期负责电力系统信息化和变电站绝缘子信息管理系统的相关文献、 资 料的收集,并对国内市场现状的分析。 采用面向对象技术并基于 netbeans 平台,参与变电站绝缘子设备运行管理 系统的分析与设计,从需求分析,系统体系结构分析到系统整体框架模型的建立。 设计和实现变电站绝缘子设备运行管理系统界面,使其实用、美观、高效、 方便。设计变电站电路图的绘图方式并参与编写其代码编写,使其方便、简单易 学、并易于扩展和维护。参与设计数据分析和比较后的结果打印报告界面的设计 与代码编写。 参与分析变电站绝缘子信息系统各实体之间的 e- r 关系。 参与编写系统各核心业务部分的代码编写,如台帐管理,数据存取管理等 部分。 超声波探伤仪接口的实现,探伤数据的自动导入和波形绘制的实现。 参与系统的测试和安装配置。 重庆大学硕士学位论文 2 系统总体设计 5 2 系统总体设计 本章将根据绝缘子数据管理系统的功能及其要求采用面向对象的方法,对其 进行需求分析,根据需求分析得出系统的整体框架模型,以及系统的层次体系结 构视图。 2.1 绝缘子数据管理系统的需求分析 本系统主要实现的目标有:建立规范的变电站绝缘子运行管理系统;完全图 形化界面的管理与操作;智能化的数据管理;与超声波探伤仪良好的接口。 根据系统开发前期在软件使用单位进行的需求调查,可以将需求分析分为以 下四个主要部分:体系构建、数据管理、核心业务和系统安全体系。下面详细介 绍上述四个部分的需求细节: 体系构建 主要包括三个主要功能:变电站接线图图形化界面、绝缘子对象图形化管理 和用户管理。变电站接线图图形化界面的功能是负责为用户展示根据变电站的接 线图设计生成的绝缘子对象图,通过对象图,用户可以方便直观的选取要管理的 绝缘子。绝缘子对象图形化管理功能实现的细节要求是对变电站接线图中的每个 设备可以完成新增,变动,删除,修改链接状态等操作,并且能够显示当前变电 站接线图中所有设备的状态,并生成分析报告,同时能够直接检索当前变电站接 线图中某个绝缘子的信息。用户管理则要求对系统用户进行初始化管理、添加用 户管理、更新用户状态管理和用户权限管理。 数据管理 主要包括三个主要功能:设备台帐管理、设备备品管理和数据维护。设备台 帐管理功能主要要求对每个变电站的设备的使用情况、维护过程、新增和变动过 程、出入库情况以及设备的检查、维修、更换进行记录。设备备品管理功能要求 建立备件台帐、库存量管理以及能够自动生成重点备件补库计划。 数据维护功能又分为以下六个子功能:数据检索管理、数据统计管理、手工 数据录入管理、维护记录管理、数据比较管理。数据检索管理功能要求实现按变 电站检索、按设备检索、按设备状态检索、按时间检索、按故障检索和按缺陷记 录检索的功能。数据统计管理功能则要求实现根据不同的条件对设备进行统计和 打印统计报告功能。手工数据录入管理功能实现的是向导式数据录入界面和系统 能实现自动建模并将用户输入数据保存到对应的设备记录下。维护记录管理功能 实现记录设备维护记录,并且能提供设备维护记录的修改功能。数据比较管理功 能能够实现对同一设备的历史数据进行比较以及不同设备的数据间的比较。 重庆大学硕士学位论文 2 系统总体设计 6 核心业务 主要由四个主要子功能组成:探伤仪数据导入及比较、探伤数据管理和设备 评级管理。探伤仪数据导入管理功能主要是实现探伤仪接口管理和探伤仪数据自 动导入。探伤数据管理功能实现的是探伤仪数据分析、探伤仪数据存储以及探伤 仪数据还原。设备评级管理主要完成根据设备的探伤数据对设备的状态进行人工 标识。 系统安全体系 本系统是收集、加工、存贮和交换的人机结合系统,也是大型的计算机网络 应用系统。为保证数据的安全,以至整个系统不受损害,系统的安全与保密至关 重要。 本系统的安全保密措施包括: 1)应用程序的安全:为实现数据的安全管理,系统在集成操作系统底层 api 和数据库安全机制的基础上,提供用户管理、用户组管理功能。应用程序在用户 登陆时需要提供用户名和密码,实现对用户身份验证。 2)业务管理的安全:在对用户授权方面,实现以下授权功能:首先是功能授 权,对选定的用户授予某些模块的一些业务功能权限(授予或拒绝) ;还有指标集 /指标项授权,允许设置用户对某些指标集拥有读、改、增、删等方面的权限,允 许设置用户对某些指标项拥有读、改等方面的权限。 3)操作日志:除数据库提供的日志以外,系统本身也提供一套操作日志。系 统自动对业务操作人员使用情况进行记录(包括用户名、操作模块、进入时间、 退出时间、使用的计算机名称等)实现对整个系统的监督、监察功能,并在出现 意外时,可以作为参考依据之一。 4)数据库的安全性:充分利用数据库提供的安全机制,在数据库备份、数据 库恢复方面支持多种方法,包括数据库日志备份、数据库自动备份等内容。这样, 在数据出现异常能够尽快恢复数据库,保证用户数据能够正常使用。 在系统的设计过程中,系统的安全措施是融入到上面前三个主要需求中,因 此在后面的章节没有单独将它进行分析和设计的讲解。 2.2 绝缘子数据管理系统整体框架模型 2.2.1 系统软件架构 根据上面对系统的需求分析,我们将绝缘子数据管理系统软件的逻辑功能分 为三个层次:图形化界面层、核心业务管理层、数据管理层。 图形化界面层:负责为用户直观呈现根据变电站的接线图设计生成的绝缘 子对象图,并且用户可以通过对象图方便直观的选取要管理的绝缘子。 重庆大学硕士学位论文 2 系统总体设计 7 核心业务层:包括绝缘子对象图形化管理、设备台帐管理、数据检索管理、 数据统计管理、探伤仪数据导入管理、手工数据录入管理、维护记录管理、数据 比较管理等业务模块。这些模块对基础数据、业务数据、其它系统数据进行业务 处理,部分模块之间有相互衔接的接口。 数据管理层:这个层次是对数据库的设计,同时也是对业务处理层所产生 的基础数据、业务数据进行安全高效的存取管理。 系统的软件框图如图 2.1 所示: 变电站接线图图形化界面 绝缘子对象图形化管 理 设备台帐管理 库存备品管理 数据检索管理数据统计管理 探伤仪数据导入管理手工数据录入管理 维护记录管理数据比较管理 结果分析管理设备评级管理 数据存取管理 数据库系统 用 户 管 理 图 2.1 系统软件框图 fig 2.1 the software architecture of system 2.2.2 业务流程结构 本系统的开发语言选择的是 java 语言,java 代码的所有类都是被组织到包中 的。一般情况下,包和系统的某个子模块相对应。 对于系统的整个事务流程来说,首先需要一个含有将事务解析成某种输入格 式的前端,这些格式可以是字符串、创建事务和启动它们的执行等。也就是说通 过控制器来创建各用户的界面、接口和事务。 登录和控制器的地位很重要,因此将他们和其他类分离,作为单独的类留在 重庆大学硕士学位论文 2 系统总体设计 8 程序的顶层。在图 2.2 中显示了本系统中有关的包、子模块以及它们之间的交互的 简单情况。 界面 登录 控制器 事务包 数据库 存储包 系统实 体包 图 2.2 界面、事务和控制器包之间的交互图 fig 2.2 the co- operation among ui/affair/controller 2.3 绝缘子数据管理系统选型分析 2.3.1 系统体系架构选型 目 前 比 较 流 行 的 软 件 系 统 体 系 结 构 主 要 有c/s(client/server) 和 b/s(browser/server)两种结构。下面简单介绍两种体系结构的特点: c/s体系结构介绍 c/s 结构,即 client/server(客户机及服务器)结构,它是软件系统体系结构。 此结构把数据库内容放在远程的服务器上,而在客户机上安装相应软件。c/s 软件 一般采用两层结构:客户端应用程序,服务器端程序。 客户/服务器配置是两层模型的一种特殊情况,这里数据库是位于另一台称之 为服务器的机器上。应用程序运行在客户机上,客户机与服务器通过网络连接。 通常采用的是企业内部网,使用专门的数据库服务器来支持多个客户机,但是也 可以简单地通过 internet来支持。通过它可以充分利用两端硬件环境的优势,将任 务合理分配到 client 端和 server 端来实现,降低了系统的通讯开销。在这种结构 中,服务器的硬件必须具有足够的处理能力,这样才能满足各客户的要求。 c/s 结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、 重庆大学硕士学位论文 2 系统总体设计 9 网络通信量低、响应速度快、利于处理大量数据。主要有两个特点:应用服务器 运行数据负荷较轻;数据的储存管理功能较为透明。 b/s体系结构介绍 b/s 结构, 即 browser/server(浏览器/服务器)结构, 是随着 internet 技术的兴起, 对 c/s 结构的一种变化或者改进的结构。在这种结构下,客户机上只要安装一个 浏览器(browser) ,如 netscape navigator或 internet explorer,服务器安装 oracle、 sybase、informix 或 sql server 等数据库。浏览器通过eb server 同数据库进行 数据交互。用户界面完全通过 www 浏览器实现,一部分事务逻辑在前端实现, 但是主要事务逻辑在服务器端实现,形成所谓 3- tier 结构。随着 windows 98/windows 2000 将浏览器技术植入操作系统内部,这种结构更成为当今应用软件 的首选体系结构。 b/s 的优点就是可以在任何安装了浏览器的地方进行操作而不用安装任何专 门的软件。它采用 internet/intranet 技术,适用于广域网环境,支持的客户数据范 围较广,没有地域限制。可根据访问量动态配置 web 服务器、应用服务器,以保 证系统性能。客户端只需标准的浏览器采用面向对象技术,代码可重用性好,系 统扩展维护简单。其缺点是开发费用较高,开发周期较长。 体系结构定型 如上所述,c/s 系统能充分发挥客户端 pc 的处理能力,很多工作可以在客 户端处理后再提交给服务器。其优点就是客户端响应速度快,c/s 系统最主要的特 点在于能够给服务器减轻压力,而且有更高的安全性和稳定性,同时数据库可以 在客户端也可以在服务器端。但是在 b/s 系统中,浏览器通过 web server 与数据 库进行数据交互。对于客户端的响应则要求不是很高。由于我们所建立的系统要 求可以实现对设备台帐数据进行准确的查询、统计的功能,根据设备数据自动分 析设备目前的状态,并在设备可能出现缺陷问题时及时提醒工作人员进行必要的 维护工作,对设备库存进行管理和分析等工作,这些都需要客户端的及时响应。 所以 c/s 结构在本系统的设计中更占有优势,更能有效的符合本系统所提出的要 求。另外本系统的网络构建环境是在变电一部的局域网范围内,而 c/s 结构更适 合于局域网,也能够满足一个地区的所有被监测的变电站区域范围。综上考虑, 我们采用 c/s 结构来作为系统的体系架构。 2.3.2 系统开发语言选型 软件开发思想选型 在目前最常用的软件开发思想有:面向过程和面向对象。 面向过程的程序设计是一种自上而下的程序设计方式, 其特点就是用函数作为 划分程序的基本单位。面向过程的程序设计的优点是易于理解和掌握。但是,面 重庆大学硕士学位论文 2 系统总体设计 10 向过程的程序设计方法对于比较复杂的问题,或者在开发中需求变化比较多的时 候,往往很难做到灵活的扩展性和兼容性。这是因为面向过程的程序设计方式是 自上而下的,这就要求设计者在一开始就要对待解决的问题有一定的了解。在遇 到问题比较复杂的时候,要做到这一点会相当的困难。事实上,开发一个系统的 过程往往也是一个对系统不断了解和学习的过程,而面向过程的设计方法忽略了 这一点。在面向过程的程序设计语言中,一般都既有定义数据的元素,也有定义 操作的元素。这样使数据和操作被分离开,容易导致多个操作对同一个数据进行 操作,而一个操作也可能会用到很多种数据,在这种情况下,数据和操作都被分 别与对方产生联系,很难在需求变化的情况下进行灵活的变动。 面向对象的程序设计方法代表了一种程序设计思路、一种方法学。面向对象方 法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使软件开发的方法 与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问 题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能 一致。面向对象涉及到的基本概念有:对象、类、继承性、多态性,这些概念的 引入能为生产可重用的软件构件和解决软件的复杂性问题提供一条有效的途径。 面向对象的编程围绕“ 谁将受到影响” 进行, 即以代码的相关数据为核心点进行程序 编写。面向对象的编程着眼于它的数据(即对象)和为此数据严格定义的接口来 组织程序,程序实际上是用数据控制对代码的访问。这种方式使得程序的可维护 性得到增强。面向对象方法开发软件的主要宗旨是提高代码的重用度。 综上比较,面向对象与面向过程有如下优势: 1)面向对象编程减少了编程代码的总量,从而加快了开发的效率。 2)代码重用度提高。 3)软件开发方式更接近于人类的思维方式。 本系统具有较高复杂度的逻辑结构,基于代码复杂度和重用度的考虑,采用 面向对象的软件开发思想是更为适合本系统开发的思想。 面向对象语言选型 面向对象语言是一类以对象作为基本程序结构单位的程序设计语言,指用于 描述的设计是以对象为核心,而对象是程序运行时的基本成分。目前较常用的面 向对象的编程语言主要有:c+、java、c#,其中 java 是 sun 公司推出的,而 c+ 和 c#都是同属于 microsoft 家族。在编程语言的选型过程中,我们主要把目光放在 了 c+和 java 两种编程语言的比较和选择上面。下面简单两种编程语言的背景和 特点: java:java 语言是由 sun 公司于 1995 年正式推出的一款新型编程语言,而到 目前为止,经过十几年的时间,java 语言已经成为迄今为止最为优秀的面向对象 重庆大学硕士学位论文 2 系统总体设计 11 语言1 2。java 语言是当前一种广泛使用的面向对象编程语言以及网络编程语言, 因为它具有面向对象、采用字节码具有平台无关性、具有丰富类库、编写简单、 脱离机器结构、具有分布性、健壮性、可移植性、安全性、动态性等多方面的特 点。并且提供了并发机制,解释执行具有很高的性能3 4。 c+:c+是 20 世纪 80 年代初期由美国 at documentbuilder db = dbf.newdocumentbuilder(); document doc = db.parse(facefile); loaded = load(face, doc); catch (exception e) 重庆大学硕士学位论文 4 系统核心业务设计与实现 33 system.out.println(exception occured in loading face); 上述代码主要描述了如何从一个元件外形文件中获得一个文档对象,从而实 现在后面对该文档对象中数据的编辑和其他操作。 4.2.3 元件渲染的编程实现 通过使用java 提供的 dom解析方式的相关包可以从xml文件中解析得到得 到关于元件外形体征的相关参数,根据此参数就可以完成元件的绘制工作。 元件绘制主要用到 java.awt.geom包,该包主要是提供用于在二维几何平面上 操作的 java 2d类1516。用到得类包括:ellipse2d、path2d和 rectangle2d。 下面通过椭圆绘制的代码实现来展示如何在 xml 文档解析的基础上实现元 件的最终绘制和视觉呈现: 定义一个接口 devicecellfaceparser,其中定义一些各种不同类型的元件在绘 制过程中所要用到的共同方法或属性,在具体绘制每种图形的时候分别实现此接 口,则可以完成不同类型元件的绘制功能。 public static interface devicecellfaceparser public void parse(path2d outline, element element); 由上介绍所知,现在绘制椭圆时需要实现 devicecellfaceparser接口,实现接 口的关键字是 implements,一个类可以实现多个接口。 public static class ellipseparser implements devicecellfaceparser public void parse(path2d outline, element element) double x = double.parsedouble(element.getattribute(x); double y = double.parsedouble(element.getattribute(y); double w = double.parsedouble(element.getattribute(w); double h = double.parsedouble(element.getattribute(h); outline.append(new ellipse2d.double(x, y, w, h), false); 其中 path2d是一个描述二维图形轮廓的类,任何二维平面上的绘制信息都可 以通过起 append 方法添加到该对象。element 是元素类,它主要描述在 xml文档 被解析过后生成的文档对象实例中的元素信息,可以描述元件的各种属性。 4.3 台帐功能模块设计与实现 如前所述,台帐功能主要是完成绝缘子数据的台帐信息记录以及数据检索和 统计管理。经过对系统需求的分析,可以将台帐功能模块设计为两个主要的子功 重庆大学硕士学位论文 4 系统核心业务设计与实现 34 能,一个是完成数据查询统计方面的数据模型和显示功能,另外一个是完成前一 个功能在具体可视化操作上与 netbeans 核心平台的连接。在本系统的设计中,对 该业务模块的设计我们采用了一个模块进行实现,query editor 是本业务实现的核 心模块。该模块的包构成是:com.twh.substation.queryeditor 和 com.twh. substation. queryeditor.action。前者是完成台帐功能模块数据模型的设计,后者是完成事件响 应代码的实现。 在对各个模块的代码设计过程中,都采用了 mvc 的程序设计思想19。mvc 设计模式即模型- 视图- 控制器模式,m(模型)主要是用于封装与应用程序业务逻 辑相关的数据以及对数据的处理方法,v(视图)能够实现数据有目的的显示,c (控制器)起到不同层面间的组织作用,用于控制应用程序的流程。mvc 程序设 计思想的优势有如下几点:低耦合性,这是由于视图层和业务层分离,这样在更 改视图层代码的时候无需对模型和控制器的代码进行变动,同样,业务流程的改 变也只需要改动 mvc 的模型层即可;高重用性和可适用性, mvc 模式允许你使 用各种不同样式的视图来访问同一个业务逻辑的代码。 此外 mvc 模型还有较低的 生命周期成本、可维护性等优点。 下面通过对上述两个 java 包代码编写的描述来详细阐述 mvc 思想在程序设 计中优势。 com.twh.substation.queryeditor 该包包含的类有 queryeditor.java, querymodel.java, querypickerdlg.java, sortquerymodel.java。 queryeditor.java 类的功能是完成数据检索功能的界面和数据的组织管理。这 个类是继承的 netbeans 自带 api 中的 org.openide.windows.topcomponent 包, 这个 包是 netbeans 内嵌的可视化组建,在 java 中所涉及到的所有组建都可以作为子容 器而放入这个底层容器中。在此类中,数据的呈现是通过对一个列表框的定义来 实现的,此列表框的作用是完成对用户查询数据的显示。此类中还对查询数据模 型和排序数据模型进行了定义,这两个模型在下面会有详细的解释。另外此类通 过对鼠标事件的响应完成了对选定设备元件的高亮显示。 querymodel.java 类是完成对一个查询结果数据模型的定义。该模型中的主要 属性有:device_name(设备名称) 、device_cdistance(设备爬距) 、 device_udate (设备投入时间) 、 device_code (设备编号) 、 device_pdata (设备生产时间) 、device_status(设备状态) 、device_type(设备类型) 、 device_vendor (设备厂商) 、 device_model (设备型号) 、 device_owner (设备所属变电站) 、device_voltage(设备电压等级) ,由于本系统开发是基 于变电一部,所以在最后一个属性中我们采用常量的形式来记录部门信息。该类 重庆大学硕士学位论文 4 系统核心业务设计与实现 35 同时还编程实现了 getvalueat()实现了对这些属性信息在数据库中信息的提取功 能。 querypickerdlg.java 类主要是完成了对查询条件界面的功能。 这是属于图形界 面部分的操作,图形界面的详细设计方法在前面章节已有介绍,在这里就不再赘 述。 sortquerymodel.java 类主要是完成了对以查询到的数据类型的排列操作。在 设计中,它同样是被设计成为一个数据模型,它完成一个数据模型到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东白云学院《医学免疫学A》2023-2024学年第一学期期末试卷
- 内蒙古科技大学《水文预报实验》2023-2024学年第一学期期末试卷
- 重度颅脑损伤病例讨论
- 课堂教学中特殊教育融合模式的有效实施策略
- 周会安全教育
- 湖南信息学院《广告创意与表现》2023-2024学年第一学期期末试卷
- 企业商标管理培训
- 中石油冬季“九防”专题安全培训
- 护理查房病例讨论制度
- 推进江河保护治理实施方案
- 紫铜材质证明
- 新产品评审管理办法
- (参考)菲达公司国内电除尘器业绩表
- 游泳池水质检测记录表
- 大学生职业生涯规划与就业指导教案第5讲:兴趣探索
- 门店电表记录表
- 七年级劳技 花卉种植 花卉用途 PPT学习教案
- 隧道换拱专项施工方案
- 国际金融托马斯普格尔复习资料整理
- 基于单片机的报警器与旋转灯设计(共21页)
- 中国农业银行房地产押品价值评估操作模板
评论
0/150
提交评论