本站小编为你精心准备了SP下金属材料标准检索平台设计参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
摘要:金属材料标准数据库是高效应用金属材料标准数据的重要工具。文章通过对常用金属材料数据库运行平台的搭建及关系数据库的构建,提出了常用金属材料标准数据模型,重点介绍了常用金属材料标准数据库系统的数据访问层、业务逻辑层及表现层,分析了工厂模式及MVC编程框架的实现过程,并对其查询功能进行了详细表述。该数据库检索系统综合运用了动态的Web应用开发技术Jsp,具有操作简单、运行高效、易维护等特点。
关键词:数据库;数据模型;JSP技术;三层结构体系;工厂模式;MVC编程框架
引言
在高档数控机床、航空航天装备和海洋工程装备等重点发展领域的产品零部件制造过程中,合理、科学地选用材料是零部件设计制造的关键环节。常用金属材料标准数据库的建立,有助于产品设计人员对金属材料性能数据准确、高效、规范和安全的应用,从而实现科学地选用材料。JSP即JavaServerPages简称,是一种基于Java平台系统的Web开发技术,它以Java为脚本语言,为整个服务器端的Java库单元提供一个接口,以便服务HTTP应用程序。目前,主流的网站开发语言有CGI、ASP、PHP、ASP.NET及JSP等。其中,JSP和ASP是两种常见的Web开发技术。相较于ASP,JSP程序应用相对独立、扩展性好、开发效率高,利用该技术能够建立跨平台的、安全的动态网站[1],受到了软件开发人员的青睐。近年来,随着JSP技术的广泛应用,Web数据库技术取得了长足发展,这为材料数据库应用提供了高效的开发平台,并使它在材料研究、产品设计及机械加工等领域中发挥着重要作用。本文结合常用金属材料标准数据模型,开发了常用金属材料标准的检索系统。
1关系数据库构建
关系数据库是对常用金属材料标准内容的深度揭示。其构建是根据金属材料标准数据结构,结合关系型数据库结构要求,采用实体关系E-R数据模型设计方法,对数据库进行概念设计,及以符合数据库规范为目的的物理设计,最终建立规范化的关系数据库[2]。通过挖掘现行国家标准和行业标准中金属材料的使用性能参数(包括屈服强度、硬度、断面伸长率等力学性能参数)和工艺参数(包括热处理、切削加工等性能参数),分别从材料尺寸、力学性能、化学成分组成及功能用途等不同维度进行归类,建立数据库的实体关系,从而实现数据库的概念结构设计。概念模型由零件、材料及标准文件实体组成。其中,各实体之间的联系如下:标准文件规定中,一种零件可以由多种金属材料加工制成,一种材料可以加工制成多种不同的零件,故实体金属材料和零件之间是多对多的联系,E-R数据模型如图1所示。结合第一范式要求即每一个分量是不可分的数据项,对每个实体定义的属性如下:材料:属性有材料名称、牌号、特性、化学成分;零件:属性有零件名称、试样尺寸、状态、用途、力学性能。逻辑结构设计是将E-R数据模型图转换为与SQLServer2008R2数据库管理系统所支持的数据模型相符合的逻辑结构。根据m:n联系的转换原则,将E-R数据模型图中实体型、实体属性和实体型之间的联系转换为以下关系模型[3]。然后结合函数依赖的原则,用下划线分别标出各实体关系的主键:材料:{牌号、材料名称、特性,化学成分}零件:{零件名称、试样尺寸、状态、用途、力学性能}最后通过关系模式合并,把数据划分为逻辑上相互关联、结构上相互独立的表结构。基于上述关系模式的数据表中,每一个非主属性既不依赖于主码,也不传递依赖于主码[4],达到了3NF。根据上述设计的关系模式和表结构,将金属材料的相关信息存储到SQLServer2008R2数据库管理系统中,建立数据源,从而实现计算机数据库的物理设计[5]。同时为了维护数据库的完整性,数据库管理系统提供了定义完整性约束条件的机制及检查的方法。随着企业对标准文件中金属性能参数需求的增长,相应的业务规则便随之而改变,应用程序中的部分片段则需要改写,由于JSP程序开发相对独立,在其组件技术的支持下,程序内容和逻辑相互独立,这使庞大、组件化的Web系统易于创建、管理和维护。故相较于其他网页开发语言,JSP技术更适合于常用材料金属标准检索系统的开发。
2应用程序开发
2.1数据库体系架构
整个系统基于SQLServer2008R2数据库管理系统+JDK1.8开发环境+应用服务器Tomcat5.5的运行平台,采用了B/S结构及JDBC(JavaDatabaseConnectivity)技术以实现用户对数据库的访问。在传统的C/S结构中,客户端需要大部分应用逻辑的实现和界面的呈现,增加了客户端应用程序的复杂度,所以维护庞大且节点众多的客户机则是一件复杂的工作;B/S构架系统既能实现“瘦客户端”,也能实现用户界面和企业逻辑的隔离, 便于系统维护和修改,系统的开放性和灵活性提高[6]。因此,常用金属材料标准检索平台采用了表现层、业务逻辑层和数据访问层的B/S三层结构体系,如图2所示。B/S三层结构体系,分离结构和代码封装清晰明确,模块之间“高内聚、低耦合”,使应用程序易于扩展、维护和重用。
2.2编程模式
2.2.1工厂模式的应用为了保证代码的易读、可靠及可重复利用,针对面向对象系统中重复出现的设计问题,提出通用的设计方案并进行系统化的命名和动机解释。这些用以表述程序运行时复杂控制流的方法称为设计模式,它是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结[7]。工厂模式属于设计模式中的创建型模式。它把对象的创建封装起来,隐藏对象创建的过程,使用专门的模块创建,这使得创建实例的任务与使用实例的任务分割开来,程序代码不再依赖于对象的具体细节[8]。该模式负责将大量有共同接口的类实例化,而每个类都能根据需要返回不同的对象。该系统的数据访问层采用简单工厂模式。其中,数据实体对应常用钢种、铜及铜合金和铝及铝合金等相应的数据表,结合业务规则抽象为类,数据表中的字段均被抽象为类的属性,放到名为domain的程序集中,如图3所示。对数据库的Select(选择)、Update(更新)等操作,均被抽象为单独的接口模块,即JavaBean组件。系统的业务逻辑层调用接口的方法返回业务实体类的实例。调用MetalInfoQueryFormBean接口执行查询功能的部分代码如下:
2.2.2框架代码的集成该系统采用了MVC编程模式。MVC模式是软件工程中的一种代码架构,包括模型、视图和控制器三部分,其结构如图4所示。其中,模型(Model)是应用程序中用于处理数据逻辑的部分,是系统功能响应代码,包含完成业务所需要的数据、操作和规则;视图(View)是应用程序中处理数据显示的部分,为系统内部与外部的接口。它既能接收用户输入的数据,触发应用逻辑运行,又能将逻辑运行的结果以一定的形式呈现给用户;控制器(Controller)是应用程序中处理用户交互的部分,从外部视图接受请求,将用户与视图的交互转换为基于应用程序行为的标准业务事件,再将标准业务事件解析为模型对应的动作,是模型与视图的连接桥梁。同时,模型的更新及修改也通过控制器来与视图相匹配,从而保持各个视图与模型的一致性[9]。基于MVC框架结构,该系统采用了JSP、JavaBean、Servlet模式来实现Web数据库技术,数据处理流程如图5所示。其中,JSP的脚本程序用作视图显示,模型功能通过JavaBean组件来实现,Servlet则是应用程序的控制器。控制器Servlet接受界面发送的请求,并根据请求信息将它们分发给适当的JSP页面来产生动作响应。同时,控制器Servlet根据来自JSP视图的请求生成JavaBean实例并输出给JSP页面。随后,Servlet设置Bean的属性供JSP读取,然后进行显示。这种设计模式很好地实现了数据访问层、业务逻辑层与表现层的分离,使软件开发工作更加容易和迅速[10]。
3查询功能实现
该系统具有丰富的、多维度的查询检索功能。
3.1材料树查询
在系统应用界面中,点击左侧不同材料菜单项则显示相应的动态材料查询树。材料查询树中的每个节点为材料类别,选择不同的节点则在右侧展示相应的查询信息。例如,选择常用钢种目录下的非调质机械结构钢,则所有材料牌号下对应该钢种的数据会在右侧列表动态呈现,如图6所示。
3.2性能指标查询
该系统能够实现金属材料性能指标的模糊查询及组合查询。模糊查询指系统按照用户输入的关键词进行模糊检索,如在查询条件名称中输入“结构钢”,右侧则呈现材料名称中包含“结构钢”的系列信息;组合查询指系统执行多个查询条件并返回一个结果集,该综合查询列表中有“力学性能”及“化学成分”两个综合查询的选项,每一项包含若干性能指标,如“力学性能”选项,则包含“抗拉强度”、“屈服强度”、“冲击吸收功”、“断后伸长率”、“断面收缩率”等五个级联条件,“化学成分”选项,则会呈现“铜”、“碳”、“锌”、“镍”、“铬”等多种化学元素的级联条件,如图7所示。右侧内容区则会根据组合查询条件,如材料牌号、名称、标准文件号、屈服强度和含碳量等级联条件,动态呈现金属材料数据。
4结束语
作为一种动态的Web应用开发技术,JSP具有灵活、可移植及安全等特点,使得常用金属材料标准数据库系统开发方便,操作简单,运行高效,易于维护。本文通过对金属材料数据模型的构建,建立了符合规范的关系数据库,使得国家标准文件中常用金属材料性能等信息能够在计算机中表示、组织和处理,从而使产品设计研发人员能够在权限机制控制下实时获取材料信息和应用材料数据,进而能够有效帮助企业在产品研发过程中收集、整理、控制和使用金属材料数据,实现材料数据的准确、高效、规范、安全应用,显著提高设计工作效率。
参考文献:
[1]窦智.基于JSP的酒店信息管理系统的设计与实现[D].吉林大学,2016
[2]沈军,朱亦刚.基于ASP.NET2.0的金属材料性能数据库检索系统设计[J].现代电子技,2009,32(10):5-7,10.
[3]杨中书,刘臣宇.基于E-R模型的关系数据库设计方法[J].价值工程,2014,33(30):242-243.
[4]王珊,萨师煊.数据库系统概论(第5版)[M].北京:高等教育出版社,2014.9:1-39.
[5]杨晨.数据库物理设计及其优化技术研究[J].电子世界,2013(19):178-179.
[6]许晏.C/S与B/S结构的比较[J].计算机光盘软件与应用,2014,1721:63-64.
[7]刘德财.基于函数式编程语言的设计模式研究[D].上海师范大学,2016.
[8]刘萍.基于简单工厂模式的三层架构系统设计及应用[J].中国科技信息,2013,14:107,111.
[9]薛峰,梁锋,徐书勋,王彪任.基于SpringMVC框架的Web研究与应用[J].合肥工业大学学报(自然科学版),2012,35(03):337-340.
[10]刘晓峥.浅析基于JSP技术的JavaBean和Servlet[J].科技视界,2015(34):241,269.
作者:胥新政 强毅 单位:机械科学研究总院