本站小編為你精心準備了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.
作者:胥新政 強毅 單位:機械科學研究總院