




已閱讀5頁,還剩92頁未讀, 繼續(xù)免費(fèi)閱讀
(交通信息工程及控制專業(yè)論文)基于Struts的接觸網(wǎng)管理信息系統(tǒng)研究與實(shí)現(xiàn).pdf.pdf 免費(fèi)下載
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
摘要 基于 struts 的接觸網(wǎng)管理信息系統(tǒng)研究與實(shí)現(xiàn) 摘要 基于 struts 的接觸網(wǎng)管理信息系統(tǒng)研究與實(shí)現(xiàn) 摘要 隨著internet技術(shù)和企業(yè)信息化建設(shè)的發(fā)展 基于browser server結(jié)構(gòu)的web應(yīng)用 因 其具有易用性 通用性和良好的可擴(kuò)展性等優(yōu)點(diǎn)而發(fā)展迅速 正逐漸成為實(shí)現(xiàn)企業(yè)應(yīng)用 信息系統(tǒng)的主流技術(shù) 而開發(fā)一個(gè)web應(yīng)用系統(tǒng)是一項(xiàng)浩大的工程 要求設(shè)計(jì)者能夠提出 合理的系統(tǒng)架構(gòu) 合理的系統(tǒng)架構(gòu)可以減少開發(fā)及維護(hù)系統(tǒng)所用的資源 提升工作效率 因此 在web企業(yè)級應(yīng)用系統(tǒng)開發(fā)過程中 設(shè)計(jì)模式的選定和應(yīng)用系統(tǒng)架構(gòu)的構(gòu)建是一 項(xiàng)重要內(nèi)容 為了達(dá)到課題的研究目的 本文主要進(jìn)行了以下的研究和設(shè)計(jì)工作 深入研究了設(shè)計(jì) 模式的思想并分析了使用它的優(yōu)勢與不足及其適用范圍 對于實(shí)現(xiàn)mvc設(shè)計(jì)模式思想的 struts框架進(jìn)行了整體結(jié)構(gòu)分析 以struts框架為基礎(chǔ) 通過對多層web體系結(jié)構(gòu)各層實(shí)現(xiàn) 方式的分析與對比 最終總結(jié)出b s架構(gòu)的技術(shù)實(shí)現(xiàn)方案 并設(shè)計(jì)出一種比較合理的基 于struts的web應(yīng)用開發(fā)的框架結(jié)構(gòu) 為了提高編程效率及準(zhǔn)確性 對代碼生成工具也作 了研究與探討 最后結(jié)合具體的實(shí)例對系統(tǒng)的實(shí)現(xiàn)作了詳盡的說明 驗(yàn)證了實(shí)現(xiàn)方法的 可行性 論文最后以接觸網(wǎng)管理信息系統(tǒng)作為理論與實(shí)踐的結(jié)合 詳細(xì)論述了多層體系架構(gòu) 的實(shí)現(xiàn)以及struts框架在該項(xiàng)目中的應(yīng)用 在開發(fā)過程中 應(yīng)用mvc設(shè)計(jì)模式實(shí)現(xiàn)了表 示邏輯和業(yè)務(wù)邏輯的分離 為系統(tǒng)的開發(fā)和維護(hù)提供了更大的靈活性和更好的可管理 型 通過實(shí)踐證明struts框架層次清晰 頁面導(dǎo)航便利的特點(diǎn) 可以實(shí)現(xiàn)系統(tǒng)的快速開 發(fā)和靈活配置 并達(dá)到較高的可靠性 可擴(kuò)展性及模塊的重用性 而且系統(tǒng)的用戶界面 風(fēng)格統(tǒng)一和直觀 關(guān)鍵詞關(guān)鍵詞 j2ee mvc 模式 struts 框架 企業(yè) javabean 摘要 ocs management information system s research and implementation based on struts framework abstract with the development of the technologies of computer network and internet web based application swith the browser server model make great progresses for its general availability easy use and good expansibility however it is usually a large project to develop a web application system and designers must be able to put forward proper system framework the proper system framework can decrease the resource to develop and maintain the system and thus increase the efficiency so it is a key aspect to determine design pattern and construct the application system framework if you want to develop web enterprise application system in order to achieve the research purpose the main work of this thesis is following research the thought of the mvc design pattern deeply and analyze the advantages and shortcomings of this pattern and its applicability scope analyze the structure of struts framework in detail that imp1emented the mvc design pattern based on the struts framework through the analysis and contrast of the implement of the multilayer web structure finally summarize the technical implement scheme of the b s framework and then design a reasonab1e web deve1opment framework base on struts to improve efficiency and validity of programming the thesis also makes a discussion of the code builder at the end of the thesis illustrate the way of rea1izing the system by an instance and validate its feasibility an example based on a ocs management information system is introduced to illustrate the process to build an n tier framework based system with the help of the struts framework in this case distinction between description logic and business logic is made possible within the mvc design patern which means better flexibility and easier management in the exploration of a system practice prove that struts frame own the characters of clear layers and convenient page navigation have the function to realize quick development and flexible configuraiton have higher reliability expansibility and reuse of modules and have unative and intuitionistic user interface keywords j2ee mvc struts framework ejb enterprise javabeans 獨(dú)創(chuàng)性聲明獨(dú)創(chuàng)性聲明 本人鄭重聲明 所呈交的學(xué)位論文是我個(gè)人在導(dǎo)師指導(dǎo)下進(jìn)行的研究 工作及取得的研究成果 盡我所知 除了文中特別加以標(biāo)注和致謝的地方 外 論文中不包含其他人已經(jīng)發(fā)表和撰寫的研究成果 也不包含為獲得華 東交通大學(xué)或其他教育機(jī)構(gòu)的學(xué)位或證書所使用過的材料 與我一同工作 的同志對本研究所做的任何貢獻(xiàn)均已在論文中作了明確的說明并表示了謝 意 本人簽名 日期 關(guān)于論文使用授權(quán)的說明關(guān)于論文使用授權(quán)的說明 本人完全了解華東交通大學(xué)有關(guān)保留 使用學(xué)位論文的規(guī)定 即 學(xué) 校有權(quán)保留送交論文的復(fù)印件 允許論文被查閱和借閱 學(xué)??梢怨颊?文的全部或部分內(nèi)容 可以采用影印 縮印或其他復(fù)制手段保存論文 保密的論文在解密后遵守此規(guī)定 本論文無保密內(nèi)容 保密的論文在解密后遵守此規(guī)定 本論文無保密內(nèi)容 本人簽名 導(dǎo)師簽名 日期 第一章 緒論 1 第一章第一章 緒論緒論 1 1 課題背景 1 1 課題背景 接觸網(wǎng) overhand contact system 及其相關(guān)設(shè)備的檢修 巡檢等管理工作是有效 保證運(yùn)營設(shè)備安全 提高供電可靠率 確保接觸網(wǎng)最小故障率的一項(xiàng)基礎(chǔ)性的日常工作 但是目前國內(nèi)人工巡視以及報(bào)表的上傳 相關(guān)數(shù)據(jù)的匯總等工作還處于人工紙介質(zhì)記錄 階段的現(xiàn)狀 這種方式在管理的過程當(dāng)中人為因素多 管理成本高 無法監(jiān)督巡檢人員 工作 巡檢數(shù)據(jù)信息化程度低 管理效率較低 存在一些缺陷如 以紙張為載體的數(shù)據(jù) 記錄既不易于保存又不易檢索 對設(shè)備是否被檢修的狀態(tài)查詢不方便 表格記錄的信息 容量有限 無法全面記錄接觸網(wǎng)線路及設(shè)備的狀態(tài) 無法確保值班人員確實(shí)到達(dá)現(xiàn)場 存在人員隨意填寫記錄的漏洞 無法直接通過報(bào)表軟件 自動統(tǒng)計(jì)各設(shè)備的歷史狀態(tài)變 化 為設(shè)備檢修服務(wù) 傳統(tǒng)巡檢模式的弊端越來越明顯 隨著計(jì)算機(jī)技術(shù)以及自動識別技術(shù)的快速發(fā)展 完全可以實(shí)現(xiàn)系統(tǒng)的快捷化 避免了以前巡檢人員帶著報(bào)表到處抄寫數(shù)據(jù)的情況 現(xiàn)在 巡檢人員只需帶著智能設(shè)備就可以進(jìn)行巡檢和數(shù)據(jù)采集工作 巡檢任務(wù)完成后 掌上電 腦和管理信息系統(tǒng)通過通過 usb wi fi 等方式進(jìn)行通訊 就可以把采集的數(shù)據(jù)傳送 到后臺管理系統(tǒng)中 這樣方便快捷的巡檢工作大大減少了出錯(cuò)的幾率 同時(shí)由于數(shù)據(jù)存 儲在后臺管理系統(tǒng)的數(shù)據(jù)庫中 隨時(shí)可以方便地進(jìn)行各種統(tǒng)計(jì) 分析 報(bào)表編制等工作 以及及時(shí)了解接觸網(wǎng)運(yùn)行線路以及設(shè)備的情況 正是因?yàn)樾录夹g(shù)的迅速發(fā)展 才使得巡 檢系統(tǒng)的開發(fā)有了技術(shù)基礎(chǔ) 大大提高了接觸網(wǎng)巡檢工作效率和準(zhǔn)確性 及時(shí)性 1 2 課題研究目標(biāo)和意義 1 2 課題研究目標(biāo)和意義 在電氣化鐵路以及城市軌道交通系統(tǒng) 地鐵 輕軌 中 接觸網(wǎng)是主要設(shè)備之一 為提高接觸網(wǎng)運(yùn)營管理效率 實(shí)現(xiàn)接觸網(wǎng)設(shè)備 檢修 巡檢等信息化管理 論文綜合利 用當(dāng)前軟件工程 數(shù)據(jù)庫等技術(shù) 研究和實(shí)現(xiàn) b s 結(jié)構(gòu)的接觸網(wǎng)管理信息系統(tǒng) 該系統(tǒng)旨在實(shí)現(xiàn)包括人員管理 設(shè)備巡檢 規(guī)范化缺陷描述 記錄數(shù)據(jù)管理 檢索 報(bào)表生成等全部工作的自動化 信息化 數(shù)字化管理 先進(jìn)性在于淘汰紙張 提高工作 效率和質(zhì)量 降低運(yùn)營成本 縮短故障處理時(shí)間 避免事故的發(fā)生 有效監(jiān)督巡檢員的 工作 通過記錄巡檢時(shí)間 保證巡檢員的工作 準(zhǔn)時(shí)到位 提高地鐵運(yùn)行的效率 簡化接觸網(wǎng)運(yùn)行檢修過程中各類數(shù)據(jù)采集錄入產(chǎn)生的重復(fù)工作 避免人工進(jìn)行數(shù)據(jù) 匯總可能造成的錯(cuò)誤 節(jié)約遠(yuǎn)程數(shù)據(jù)上報(bào)帶來的時(shí)間浪費(fèi)和經(jīng)濟(jì)開支 縮短數(shù)據(jù)上報(bào)的 第一章 緒論 2 周期 并能夠?qū)φw設(shè)備及單項(xiàng)設(shè)備進(jìn)行自動統(tǒng)計(jì)分析 準(zhǔn)確地反映高速接觸網(wǎng)的運(yùn)行 狀態(tài) 給出運(yùn)行質(zhì)量的綜合評價(jià) 為接觸網(wǎng)的調(diào)整和維護(hù)提供科學(xué)依據(jù) 提高接觸網(wǎng)運(yùn) 行檢測的質(zhì)量和效率 1 31 3 本文的主要工作本文的主要工作 本文主要工作 1 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì) 經(jīng)過對系統(tǒng)的需求書進(jìn)行仔細(xì)的分析并多方權(quán)衡和取舍將本系統(tǒng)分為五大模塊 整 個(gè)系統(tǒng)呈模塊化結(jié)構(gòu)設(shè)計(jì) 系統(tǒng)功能明確具有良好的可操作性和可擴(kuò)展性 2 基于基于struts 框架實(shí)現(xiàn)框架實(shí)現(xiàn) 在對struts技術(shù)進(jìn)行深入分析研究的基礎(chǔ)上 提出了一系列用戶端請求的處理方案 包括數(shù)據(jù)庫的訪問設(shè)計(jì) 用戶的認(rèn)證 授權(quán)及安全退出 日志的管理與實(shí)現(xiàn)等 同時(shí)還 對畫面數(shù)據(jù)傳遞過程中可能出現(xiàn)的各種遷移關(guān)系 以及可能發(fā)生的多種錯(cuò)誤情況進(jìn)行了 詳盡的研究 提出了保證數(shù)據(jù)傳遞正確有效的解決方案 一方面減輕了項(xiàng)目開發(fā)的任務(wù) 量 另一方面 切實(shí)增強(qiáng)了系統(tǒng)的靈活性 可擴(kuò)展性 便于維護(hù)升級 基于對中文字符亂 碼產(chǎn)生原因的分析與綜合 3 系統(tǒng)部署系統(tǒng)部署 在業(yè)務(wù)層和web層設(shè)計(jì)完成后 將它們分別打包成獨(dú)立的模塊 然后再集成為一個(gè) 完整的j2ee應(yīng)用并部署到應(yīng)用服務(wù)器上 4 調(diào)試系統(tǒng)調(diào)試系統(tǒng) 完成系統(tǒng)的部署以后還要對整個(gè)系統(tǒng)進(jìn)行調(diào)試以糾正系統(tǒng)中隱藏的錯(cuò)誤和漏洞使 系統(tǒng)能穩(wěn)定可靠的運(yùn)行 1 41 4 論文結(jié)構(gòu)論文結(jié)構(gòu) 第一章 緒論 介紹了課題的研究背景 研究目的及所做的主要工作和論文的組織結(jié)構(gòu) 第二章 該章首先介紹了j2ee平臺和j2ee模式的一些基本概念和特點(diǎn) 介紹了struts框 架概念 探討了struts框架各個(gè)組成部分的體系結(jié)構(gòu) struts框架的工作原理 組件及其 配置文件 為實(shí)際應(yīng)用的開發(fā)打下理論的基礎(chǔ) 然后介紹了j2ee應(yīng)用中所涉及的一些關(guān) 鍵技術(shù) 主要為jsp java servlet 第三章 該章介紹了接觸網(wǎng)管理信息系統(tǒng)的分析與設(shè)計(jì) 主要是對系統(tǒng)的功能分析 對 系統(tǒng)結(jié)構(gòu)和數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì) 第四章 該章描述了接觸網(wǎng)管理信息系統(tǒng)的struts框架中視圖 模型 控制器的構(gòu)建過程 與解決方案 第一章 緒論 3 第五章 該章介紹了接觸網(wǎng)管理信息系統(tǒng)的集成 安裝 測試 并給出了系統(tǒng)運(yùn)行效果 和測試結(jié)果 第六章 結(jié)束語對全文做了總結(jié) 提出了論文的不足之處及作者在開發(fā)接觸網(wǎng)管理信息 系統(tǒng)中的體會 提出一點(diǎn)本人對新技術(shù)展望 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 4 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 本章將介紹 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架的一些基本概念和特點(diǎn) 為本文的闡述 打下理論基礎(chǔ) 傳統(tǒng)的 web 應(yīng)用開發(fā)工具 asp jsp 將頁面顯示 商業(yè)邏輯和數(shù)據(jù) 處理大部分都集中在頁面代碼中 三者強(qiáng)耦合 使 web 應(yīng)用擴(kuò)展和維護(hù)比較困難 也 不利于開發(fā)人員的分工協(xié)作 迫切需要一種全新的 web 應(yīng)用的設(shè)計(jì)技術(shù)和開發(fā)工具 將頁面顯示 商業(yè)邏輯和數(shù)據(jù)處理分離 最大限度的降低系統(tǒng)各部分之間的耦合性 從 而增強(qiáng)系統(tǒng)的可擴(kuò)展及維護(hù)性 提高代碼的重用率 mvc 模式和 struts 架構(gòu)技術(shù)正是 基于這種需求應(yīng)運(yùn)而生 2 1 j2ee 平臺簡介 2 1 j2ee 平臺簡介 j2ee 是 java2 platform enterprise edition 1 的縮寫 它是 sun 公司提出的一種分布式 企業(yè)級應(yīng)用開發(fā)的技術(shù)架構(gòu) 是一種利用 java 2 平臺簡化企業(yè)解決方案的開發(fā) 部署和 管理相關(guān)復(fù)雜問題的體系結(jié)構(gòu) j2ee 不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn) 例如 編寫一次 隨處運(yùn)行 的特性 2 方便存取數(shù)據(jù)庫的 jdbc api corba 技術(shù) 以及能夠在 internet 應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等 同時(shí)還提供了對 ejb jsp 及 xml 技術(shù)的全面支持 其最終目的就是成為一個(gè)能夠使企業(yè)開發(fā)者大幅度縮短投放市場時(shí)間的體系結(jié)構(gòu) 其優(yōu) 勢主要是為搭建具有可伸縮性 靈活性 易維護(hù)性的業(yè)務(wù)系統(tǒng)提供了良好的機(jī)制 具體 優(yōu)勢如下 3 1 j2ee 是由 sun 引導(dǎo) 各廠商共同發(fā)起的 并得到廣泛認(rèn)可的業(yè)界標(biāo)準(zhǔn) 因此它擁有 良好的市場和旺盛的生命力 2 j2ee 具有良好的開放性和可移植性 它可保留已有的信息資源并可適應(yīng)未來的變化 3 j2ee 可縮短系統(tǒng)開發(fā)時(shí)間 4 支持分布式計(jì)算 支持多種終端 2 1 1 基于2 1 1 基于 j2ee 的的 web 應(yīng)用框架應(yīng)用框架 框架是為了支持企業(yè)在軟件開發(fā)方面的需求 提供給開發(fā)人員使用的一個(gè)基礎(chǔ)平臺 它提供了一整套預(yù)制的軟性構(gòu)架 能夠?yàn)殚_發(fā)者所使用 擴(kuò)展及定制以滿足特定的業(yè)務(wù) 需求 它有以下特點(diǎn) 1 框架是一些軟件系統(tǒng)的全部或部分可再使用的設(shè)計(jì) 是由一組類及他們的實(shí)例交互 的方式組成 2 框架是一個(gè)應(yīng)用系統(tǒng)的骨架 可由系統(tǒng)開發(fā)者自己定制 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 5 3 框架是一個(gè)可再使用 近似完成的應(yīng)用系統(tǒng) 可根據(jù)特定需求產(chǎn)生客戶要求的應(yīng)用 系統(tǒng) 如今 j2ee 平臺已經(jīng)日趨成熟 并得到廣泛的應(yīng)用 在 j2ee 技術(shù)中發(fā)展最迅猛 的當(dāng)屬 java server pages jsp 4 技術(shù) 幾乎所有的基于 java 的 web 應(yīng)用都使用 jsp 一 些開放源代碼的 jsp servlet 5 容器 如 apache 軟件組織提供的 tomcat 更進(jìn)一步推動了 jsp 技術(shù)的發(fā)展 隨著 jsp 技術(shù)的成熟 越來越多的開發(fā)人員開始使用 web 應(yīng)用框架 框架為 web 應(yīng)用提供了預(yù)備的軟件架構(gòu)和相關(guān)的軟件包 它大大提高了開發(fā) web 應(yīng)用 的速度和效率 當(dāng)前基于 j2ee 的應(yīng)用框架主要集中在 web 層 旨在規(guī)范這一層的軟件 開發(fā) 現(xiàn)今基于 j2ee 的 web 應(yīng)用框架主要有 apache struts jato jsf javaserverfaces waf 2 1 22 1 2 j2ee 的四層模型j2ee 的四層模型 j2ee 提供了一套完整的開發(fā)多層分布式應(yīng)用的技術(shù)和設(shè)施 服務(wù) api j2ee 使用多層 分布式應(yīng)用程序模型 根據(jù)功能的不同 把應(yīng)用程序邏輯劃分成各個(gè)組件 一個(gè)組件應(yīng) 該被安裝在什么地方 取決于該組件屬于多層 j2ee 應(yīng)用的哪一層 這些層分別是客戶 層 web 層 業(yè)務(wù)層 企業(yè)信息系統(tǒng)層 eis 如圖 2 1 所示 圖 2 1 j2ee 多層結(jié)構(gòu)圖 fig 2 1 j2 ee n tier framework structure 2 2 mvc 設(shè)計(jì)模式 mvc 3 模式 model view controller 模型 視圖 控制器 是 xeroxparc 在八十年代 為編程語言 smaltalk 80 所發(fā)明的一種軟件設(shè)計(jì)模式 至今己被廣泛使用 并被推薦為 sun 公司 j2ee 平臺的設(shè)計(jì)模式 其為開發(fā)交互式應(yīng)用系統(tǒng)提供了一個(gè)優(yōu)秀的設(shè)計(jì)模式 受到越來越多開發(fā)者的歡迎 2 2 12 2 1 mvc 設(shè)計(jì)模式的結(jié)構(gòu)mvc 設(shè)計(jì)模式的結(jié)構(gòu) mvc 強(qiáng)制性的把應(yīng)用程序的輸入 處理 輸出分開 mvc 把應(yīng)用程序分成三個(gè)核心 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 6 模塊 模型 視圖 控制器 他們分別擔(dān)負(fù)不同的任務(wù) 以提高應(yīng)用程序的可擴(kuò)展性 圖 2 2 顯示了這幾個(gè)模塊各自的功能以及它們的相互關(guān)系 圖 2 2 mvc 模式的工作流程 fig 2 2 mvc model work process 1 model 模型指的是真正完成任務(wù)的代碼 包含應(yīng)用系統(tǒng)的核心功能 表示一個(gè)應(yīng)用 系統(tǒng)的數(shù)據(jù) 并且包含訪問 維護(hù)和管理這些數(shù)據(jù)的邏輯 一個(gè)模型聚集了相關(guān)的數(shù)據(jù) 和操作 以提供一個(gè)詳細(xì)而精確的服務(wù) 這些被封裝在操作中的抽象事物的功能被模型 化 它的接口提供了訪問和更新模型狀態(tài) 執(zhí)行封裝在模型中的復(fù)雜進(jìn)程的方法 模型 服務(wù)被控制器訪問 用于查詢或更改模型的狀態(tài) 當(dāng)模型狀態(tài)發(fā)生變化時(shí) 模型會通報(bào) 給視圖 對大多數(shù) web 應(yīng)用程序而言 功能比界面更重要 在模型同界面分離的情況 下 代碼即可實(shí)現(xiàn)可管理性和可重用性 2 view 視圖表示模型的狀態(tài) 是應(yīng)用系統(tǒng)的外觀 當(dāng)模型發(fā)生改變時(shí) 視圖也將隨之 改變 以維持系統(tǒng)數(shù)據(jù)的一致性 在 mvc 模式下 通常的設(shè)計(jì)前提是界面任務(wù)較小 當(dāng)然視圖也應(yīng)該具有一定的功能性并遵守可用性的約束 但視圖界面不應(yīng)當(dāng)處理數(shù)據(jù) 事實(shí)上 視圖的每一部分都只能包含采集數(shù)據(jù)的邏輯 并把采集到的數(shù)據(jù)傳遞給設(shè)計(jì)模 式中的其他組成部分進(jìn)行處理 3 controller 控制器是聯(lián)系模型與視圖之間的紐帶 控制模型和視圖之間的交互過程 它獲取并翻譯用戶輸入的動作 指定執(zhí)行該動作的模型 或者根據(jù)用戶的輸入和執(zhí)行的 結(jié)果來選擇下一個(gè)視圖 由圖 2 2 可知 mvc 模式的處理流程是 首先控制器接收用 戶的請求 并決定應(yīng)該調(diào)用哪個(gè)模型來進(jìn)行處理 然后模型調(diào)用業(yè)務(wù)邏輯來處理用戶的 請求并返回?cái)?shù)據(jù) 最后控制器用相應(yīng)的視圖返回?cái)?shù)據(jù) 并通過表示層呈現(xiàn)給用戶 2 2 2 2 2 2 mvc 設(shè)計(jì)模式在 j2ee 平臺中的應(yīng)用模型mvc 設(shè)計(jì)模式在 j2ee 平臺中的應(yīng)用模型 mvc 設(shè)計(jì)模式是一種用于分離數(shù)據(jù)維護(hù)和數(shù)據(jù)表現(xiàn)的方法 在 j2ee 中引入 mvc 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 7 設(shè)計(jì)模式 有助于把應(yīng)用劃分為合理的組件 從而可以方便的進(jìn)行系統(tǒng)的開發(fā) 維護(hù)和 擴(kuò)充 目前 這種結(jié)合己經(jīng)被廣泛的應(yīng)用于許多企業(yè)級 web 應(yīng)用系統(tǒng)的開發(fā)過程中 其中 jsp 用于創(chuàng)建與用戶交互的視圖 java bean ejb 等組件用于創(chuàng)建實(shí)現(xiàn)業(yè)務(wù)邏輯 的模型 servlet 用于創(chuàng)建實(shí)現(xiàn)業(yè)務(wù)邏輯與用戶交互的控制器 web 應(yīng)用客戶端的用戶動 作被視圖傳遞給 servlet 集中處理 servlet 處理控制邏輯 調(diào)用 beans 激活業(yè)務(wù)邏輯或 修改模型狀態(tài) 根據(jù)用戶動作和模型處理的結(jié)果 控制器選擇一個(gè)視圖作為用戶請求的 響應(yīng) 這樣 就形成了清晰的 mvc 設(shè)計(jì)模式 簡化了 web 應(yīng)用系統(tǒng)的開發(fā) 圖 2 3 基于 j2ee 和 mvc 設(shè)計(jì)模式的系統(tǒng)模型 fig 2 3 based on j2ee and mvc of system model 基于 j2ee 和 mvc 設(shè)計(jì)模式的系統(tǒng)模型如圖 2 3 所示 其技術(shù)原理是 以 sqlserver oracle sybase 等企業(yè)級數(shù)據(jù)庫系統(tǒng)作為后臺數(shù)據(jù)庫 以 servlet 等高性能服務(wù)端程序作 為后臺總控程序 jsp 頁面在前臺運(yùn)行 servlet 接受用戶的輸入 分別調(diào)用不同的 jsp 頁面向?yàn)g覽器反饋信息 jsp servlet 通過 http 連接在服務(wù)器端和瀏覽器端傳遞數(shù)據(jù) jsp servlet 并不使用 jdbc 技術(shù)直接訪問數(shù)據(jù)庫系統(tǒng) 而是把參數(shù)傳遞給 ejb 組件 8 由 ejb 組件對數(shù)據(jù)庫進(jìn)行操作 這樣就可以封裝系統(tǒng)的內(nèi)部數(shù)據(jù) javabean 和 ejb 組 件還可以把事務(wù)分發(fā)到其他組件中進(jìn)行處理 最后把從數(shù)據(jù)庫返回的結(jié)果 由jsp servlet 發(fā)送到前端顯示 2 2 3 mvc 設(shè)計(jì)模式的優(yōu)點(diǎn)2 2 3 mvc 設(shè)計(jì)模式的優(yōu)點(diǎn) 1 多個(gè)視圖共享一個(gè)模型 大大提高了代碼的可重用性 2 模型是自包含的 與控制器和視圖保持相對獨(dú)立 所以可以方便地改變應(yīng)用程序 的數(shù)據(jù)層和業(yè)務(wù)規(guī)則 3 控制器提高了應(yīng)用程序的靈活性和可配置性 4 mvc 可以很好的表達(dá)用戶的交互和系統(tǒng)模式 5 可以很方便用多個(gè)視圖顯示多套數(shù)據(jù) 使系統(tǒng)很方便的支持其它新的客戶端類型 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 8 6 由于分離了模式中的控制和數(shù)據(jù)表現(xiàn) 可以分清開發(fā)者的責(zé)任 同時(shí)也可以加快 產(chǎn)品推行市場的時(shí)間 盡管 mvc 應(yīng)用到應(yīng)用程序中 會帶來額外的工作量 但它將會 使軟件在健壯性 代碼重用和結(jié)構(gòu)方面上了一個(gè)新的臺階 從長遠(yuǎn)來看 它會大大提高 后期軟件開發(fā)效率 2 3 struts 框架2 3 struts 框架 本節(jié)將詳細(xì)的分析 struts 框架 5 的基本概念 以及在 struts 開發(fā)過程常涉及的一些關(guān) 鍵技術(shù) 為本文第三章 接觸網(wǎng)管理信息系統(tǒng)的分析與設(shè)計(jì)做好技術(shù)理論的準(zhǔn)備 2 3 1 strut2 3 1 struts 框架概述框架概述 在早期的 java web 應(yīng)用中 jsp 文件負(fù)責(zé)業(yè)務(wù)邏輯 控制網(wǎng)頁流程并創(chuàng)建 html 這給 web 應(yīng)用帶來了很大的問題 為了解決上述問題 sun 公司先后制定了兩種規(guī)范 成為 jsp modell 和 jsp mode12 雖然 modell 在一定程度上實(shí)現(xiàn)了 mvc 但它運(yùn)用的 并不理想 直到基于 j2ee 的 jsp mode12 問世才得以改觀 struts 就是在 jsp model2 基 礎(chǔ)上實(shí)現(xiàn)的一個(gè) mvc 框架 是 mvc 架構(gòu)技術(shù)的一種具體實(shí)現(xiàn) 是 apache 公司 2002 年 5 月作為公司的一個(gè)項(xiàng)目的組成部分問世 項(xiàng)目的創(chuàng)立者希望通過對該項(xiàng)目的研究 改進(jìn)和提高 jsp 以及面向?qū)ο蟪绦蛟O(shè)計(jì)的技術(shù)水平 它是一種符合 mvc 范例的 jsp 開發(fā)技術(shù) 是對 jsp 開發(fā)技術(shù)的繼承和發(fā)展 包含了豐富的標(biāo)記庫和獨(dú)立于該框架工作 的實(shí)用程序類 在 struts 框架中 模型由業(yè)務(wù)邏輯的 javabean 或 ejb 組件構(gòu)成 控制 器由 actionservlet 和 action 來實(shí)現(xiàn) 視圖由一組 jsp 文件構(gòu)成 2 3 2 struts 實(shí)現(xiàn) mvc 的機(jī)制 2 3 2 struts 實(shí)現(xiàn) mvc 的機(jī)制 struts 是實(shí)現(xiàn) mvc 的一個(gè)框架 它有其自己的控制器 controller 同時(shí)整合了其他 的一些技術(shù)去實(shí)現(xiàn)模型層 model 和視圖層 view 在模型層 struts 可以很容易的與數(shù) 據(jù)訪問技術(shù)相結(jié)合 包括 ejb jdbc 和 object relationbridge 在視圖層 struts 能夠 與 jsp velocity templates 和 xsl 等等這些表示層組件相結(jié)合 10 圖 2 4 顯示了 struts 實(shí)現(xiàn)的 mvc 框架 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 9 圖 2 4 struts 實(shí)現(xiàn)的 mvc 框架 fig 2 4 struts implemente mvc framework 視圖 view struts 應(yīng)用中的 view 部分是通過 jsp 技術(shù)實(shí)現(xiàn)的 jsp 頁面包含稱為 模 版文本 的靜態(tài) html 加上插入的基于對特殊行為標(biāo)記解釋的動態(tài)內(nèi)容 struts 不但 利用了 jsp 規(guī)范描述的一套標(biāo)準(zhǔn)的行為標(biāo)記而且還提供了自定義的標(biāo)記庫 通過這些自 定義標(biāo)記可以很好地和系統(tǒng)的 model 部分交互 通過使用自定義標(biāo)記創(chuàng)建的 jsp 表單 可以實(shí)現(xiàn)和 model 部分中的 actionform 的映射 11 控制器 controller 控制器本質(zhì)上是一個(gè) servlet 它的作用是從客戶端接受請求 并 且選擇執(zhí)行相應(yīng)的業(yè)務(wù)邏輯 然后把響應(yīng)結(jié)果送回到客戶端 在 struts 中 controller 功 能由 actionservlet actionmapping 和 actionforward 對象構(gòu)成 actionservlet 是一個(gè) servlet 類型的對象 actionmapping 對象實(shí)現(xiàn)了一個(gè)請求到一個(gè)具體的 model 部分中 action 處理器對象之間的映射 actionforward 制定了不同業(yè)務(wù)邏輯或流程的運(yùn)行方向 模型 model mvc 系統(tǒng)中的 model 部分從概念上可以分為兩類 系統(tǒng)的內(nèi)部狀態(tài)和 改變系統(tǒng)狀態(tài)的動作 通常來說 應(yīng)用程序?qū)⑾到y(tǒng)內(nèi)部的狀態(tài)表示為一組一個(gè)或多個(gè)的 javabeans 使用屬性 properties 來表示狀態(tài)的細(xì)節(jié) 依賴于應(yīng)用程序的復(fù)雜度 這些beans 可以是自包含的 以某種方式知道怎樣永久地保存它們的狀態(tài)信息 或者可以是正面的 facades 知道當(dāng)被請求時(shí)怎樣從外部數(shù)據(jù)源 例如數(shù)據(jù)庫 中取得信息 2 3 3 struts 框架的基本組成 2 3 3 struts 框架的基本組成 在上一節(jié)中 已經(jīng)介紹了如何用 struts 框架來實(shí)現(xiàn) mvc 模式 這一節(jié)將描述 struts 框架的基本組成部分 圖 2 5 顯示了 struts 框架的基本工作原理 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 10 圖 2 5 struts 框架工作原理圖 fig 2 5 struts framework principle diagram 1 struts 的視圖 struts 框架采用視圖組件來實(shí)施為客戶端提供動態(tài)的數(shù)據(jù) 該組件主要采用 java server pages jsp 技術(shù) 提供服務(wù)給國際化的應(yīng)用 同時(shí)也為用戶輸入的接受 確認(rèn)和 錯(cuò)誤處理提供可擴(kuò)展性的服務(wù) 這些處理方式使得開發(fā)者可以更方便地將注意力集中在 業(yè)務(wù)需求上 視圖主要是由 jsp 生成頁面完成的 struts 提供豐富的 jsp 標(biāo)簽庫 html bean logic 和 template 這些都有利于分開表示邏輯和業(yè)務(wù)邏輯 1 html 文檔 盡管 html 文檔只能夠生成靜態(tài)頁面 但是在 struts 應(yīng)用中仍然能 夠使用標(biāo)準(zhǔn)的 html 文檔 不管視圖是否是靜態(tài)的 標(biāo)準(zhǔn)的 html 文檔仍然有效 2 jsp 文件 jsp 是一種實(shí)現(xiàn)普通靜態(tài) html 和動態(tài) html 混合編碼技術(shù) 是 嵌 入了 html 的 java servlet jsp 還能實(shí)現(xiàn)橫跨 http 請求的對象持久化 當(dāng)瀏覽器第 一次連接到服務(wù)器 對應(yīng)客戶端連接的單一會話就被建立起來 這使得會話中的信息從 一個(gè)請求到下一個(gè)請求中都是可用的 可以通過在 httprequest 對象調(diào)用 getsession 方 法來獲得 3 struts 標(biāo)記庫 struts 標(biāo)記庫是 struts 架構(gòu)中的很大一部分 jsp 視圖組件所使用 的 struts 標(biāo)記庫有四類 bean 標(biāo)記 邏輯標(biāo)記 logic html 標(biāo)記 模板標(biāo)記 template 4 struts actionformbean 捕獲表單數(shù)據(jù) 應(yīng)用系統(tǒng)的消息轉(zhuǎn)移 或者說狀態(tài)轉(zhuǎn)移 的非持久性數(shù)據(jù)存儲 是由 actionformbean 負(fù)責(zé)保持 actionform 類擴(kuò)展了 org apache struts action actionform 類 對于每個(gè)客戶請求 strutsframework 在處理 actionform 的時(shí)候 一般需要經(jīng)歷如下步驟 檢查 action 的映射 確定 action 中已經(jīng)配置了對 actionform 的映射 根據(jù) name 屬性 查找 formbean 的配置信息 檢查 action 的 frombean 的使用范圍 確定在此范圍下 是否已經(jīng)有此 formbean 的實(shí)例 假如當(dāng)前范圍下 已經(jīng)存在了此 formbean 的實(shí)例 但是對當(dāng)前請求來說是同一類 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 11 型的話 那么就重用 否則 就重新構(gòu)建一個(gè) formbean 的實(shí)例 formbean 的 reset 方法被調(diào)用 調(diào)用對應(yīng)的 set 方法 對狀態(tài)屬性賦值 如果 validated 的屬性被設(shè)置為 true 那么就調(diào)用 formbean 的 validate 方法 如果 validate 方法沒有返回任何錯(cuò)誤 控制器將 actionform 作為參數(shù) 傳給 action 實(shí)例的 execute 方法并執(zhí)行 如果 validate 方法返回錯(cuò)誤 request getparametervalues parametername 被用于得 到一個(gè) string 對象 用來進(jìn)行表單填充 驗(yàn)證結(jié)果是 actionerrors 對象 用 org apache struts taglib html errortag 來顯示驗(yàn)證錯(cuò)誤給用戶 2 struts 的控制器 在 struts 中承擔(dān) mvc 框架中控制 controller 角色的是一組控制器組件 使用該組件 為應(yīng)用程序的控制提供一個(gè)集中點(diǎn) 由于控制器在客戶端的輸入與模型間扮演一個(gè)中間 人的角色并且所有的請求都是由控制器來過濾的 所以將哪個(gè)視圖返回給客戶端就完全 由控制器來決定 同時(shí)它也可以為每個(gè)客戶端提供一些公用的功能 如安全 日志 國 際化等 struts 控制器的主要功能包括 從客戶端截獲請求 將每一個(gè)請求轉(zhuǎn)化及映射 為業(yè)務(wù)操作 收集業(yè)務(wù)操作的結(jié)果并使之對客戶端可用 根據(jù)當(dāng)前狀態(tài)及業(yè)務(wù)操作的結(jié) 果決定將何種視圖顯示給客戶端 在這些控制器組件中最主要的是一個(gè) servlet 叫 actionservlet actionservlet 是一個(gè)通用的控制組件 這個(gè)通用的控制組件提供了處理 所有發(fā)送到 struts 的 http 請求的入口點(diǎn) 它截取和分發(fā)這些請求到相應(yīng)的動作類 action 類的子類 控制器組件負(fù)責(zé)將相應(yīng)的請求參數(shù)填充 actionform 并傳給動作類 動作類則實(shí)現(xiàn)商業(yè)邏輯核心并向下調(diào)用 直到數(shù)據(jù)層把要顯示的數(shù)據(jù)傳給視圖文件如 jsp 文件 所有這些控制邏輯利用 struts config xml 文件來配置 3 struts 的模型 在 struts 的 mvc 架構(gòu)中 model 被定義為與之關(guān)聯(lián)最不緊密的部分 model 是用來 控制紛亂的業(yè)務(wù)邏輯的 而這些業(yè)務(wù)邏輯是所有不被顯示的東西 控制流程或者是構(gòu)成 系統(tǒng)實(shí)際運(yùn)行的底層機(jī)制 在 mvc 模式中 model 可以由任意技術(shù)組成 如用 jdom 解析器 用來處理 xml 文件 用 jndi 實(shí)現(xiàn) 與 ldap 服務(wù)器進(jìn)行通信 ejb 存根 stub 與 ejb 服務(wù)器進(jìn)行通信 soap 客戶端 同遠(yuǎn)程的 web 服務(wù)進(jìn)行通信 就 struts 而言 無論 model 需要什么樣的通信協(xié)議 工作是由 action 來執(zhí)行的 為了設(shè)計(jì)良好的 model struts 的 action 應(yīng)該盡可能地獨(dú)立于實(shí)際的 model 實(shí)現(xiàn) 這可以通過抽象來實(shí)現(xiàn) 如 model 使用 jndi 從服務(wù)器上查找一個(gè)用戶名和密碼 不應(yīng)該把特定 jndi 的代碼放到 action 中 相反 action 應(yīng)該使用接口 或者是設(shè)計(jì)良好的 api 來同 model 進(jìn)行通信 并且 model 應(yīng)該全權(quán)負(fù)責(zé)初始化和調(diào)用 jndi 也就是說 如果想改變 model 只需要 改變 model 的代碼 而不需要碰 action 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 12 2 3 4 struts 配置文件 2 3 4 struts 配置文件 struts 應(yīng)用采用兩個(gè)基于 xml 的配置文件來配置應(yīng)用 這兩個(gè)配置文件為 web xml 和 struts config xml web xml 適用于所有的 java web 應(yīng)用 它是 web 應(yīng)用的發(fā)布描述 文件 在 java servlet 規(guī)范中對它做了定義 對于 struts 應(yīng)用 在 web xml 文件中除了配 置 java web 應(yīng)用的常規(guī)信息 還應(yīng)該配置 struts 相關(guān)的特殊信息 struts config xml 文件 是 struts 應(yīng)用專有的配置文件 事實(shí)上 也根據(jù)需要給這個(gè)配置文件起其他的文件名 1 web xml 文件 web 應(yīng)用的發(fā)布描述文件可以在應(yīng)用開發(fā)者 發(fā)布者和組裝者之間傳遞配置信息 web 容器在啟動時(shí)從該文件中讀取配置信息 根據(jù)它來裝載和配置 web 應(yīng)用 所有和 servlet2 3 規(guī)范兼容的 servlet 容器支持以下發(fā)布信息 初始化參數(shù) servlet 聲明 servlet 映射 應(yīng)用生命周期的監(jiān)聽器類 過濾器定義和映射 mime 類型映射 歡迎文件列表 錯(cuò)誤處理頁面 標(biāo)簽庫映射 jndi 引用 2 struts config xml 文件 在 struts 體系中各種組件的結(jié)合是依靠配置文件 struts config xml 完成的 具體有以 下幾種 全局轉(zhuǎn)發(fā) 全局轉(zhuǎn)發(fā)用在 web 應(yīng)用程序中 通過 jsp 之間的創(chuàng)建邏輯名稱映射 它可以代替 jsp 中復(fù)雜的編碼名稱 配置 actionmapping 此對象幫助進(jìn)行框架內(nèi)部的流程控制 它們可將請求 url 映射到 action 類 并將 action 類與 actionfrom bean 關(guān)聯(lián) 配置 actionfrom bean actionservlet 使用 actionfrom bean 來保存請求的參數(shù) 這些 bean 的屬性名稱與 http 請求的參數(shù)中的名稱相對應(yīng) 控制器將請求參數(shù)傳遞到 actionfrom bean 的實(shí)例中 然后傳送到 action 類中 配置 jdbc 數(shù)據(jù)源 jdbc 數(shù)據(jù)源可以在配置文件中利用元素來定義 同時(shí)在配置文件中可以配置多個(gè)數(shù)據(jù)源 實(shí)現(xiàn)業(yè)務(wù)邏輯對后臺數(shù)據(jù)系統(tǒng)的訪問 struts 框架在啟動時(shí)會讀入其配置文件 根據(jù)它來創(chuàng)建和配置各種 struts 組件 struts 配置文 件使得開發(fā)者可以靈活地組裝和配置各個(gè)組件 提高了應(yīng)用軟件的可擴(kuò)展性和靈活性 可以避免硬編碼 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 13 2 3 5 struts 框架的工作步驟 2 3 5 struts 框架的工作步驟 對于采用 struts 框架的 web 應(yīng)用 在 web 應(yīng)用服務(wù)器啟動時(shí)就會加載并初始化對象 actionservlet actionservlet 從 struts config xml 文件中讀取配置信息 把它們存放到各 種配置對象中 12 例如 action 的映射信息存放在 actionmapping 對象中 當(dāng) actionservlet 接受到一個(gè)客戶請求時(shí) 將執(zhí)行如圖 2 6 的流程 圖 2 6 struts 框架流程圖 fig 2 5 struts framework flow diagram 1 檢索和用戶匹配的 actionmapping 實(shí)例 如果不存在 就返回用戶請求路徑無效的信 息 2 如果 actionform 實(shí)例不存在 就創(chuàng)建一個(gè) actionform 對象 把客戶提交的表單數(shù)據(jù) 保存到 actionform 對象中 3 根據(jù)配置信息決定是否需要表單驗(yàn)證 如果需要驗(yàn)證 就調(diào)用 actionform 的 validate 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 14 方法 4 如果 actionform 的 validate 方法返回 null 或者返回一個(gè)不包含 actionmessage 的 actionerrors 對象 就表明表單驗(yàn)證成功 5 actionservlet根據(jù)actionmapping實(shí)例包含的映射信息決定將請求轉(zhuǎn)發(fā)給哪個(gè)action 如果相應(yīng)的 action 實(shí)例不存在 就創(chuàng)建這個(gè)實(shí)例 然后調(diào)用 action 的 execute 方法 6 action 的 execute 方法返回一個(gè) actionforward 對象 actionservlet 再把客戶請求轉(zhuǎn) 發(fā)給 actionforward 對象指向的 jsp 組件 7 actionforward 對象指向的 jsp 組件生成動態(tài)網(wǎng)頁 返回給客戶 2 3 6 struts 框架的優(yōu)點(diǎn)與缺點(diǎn) 2 3 6 struts 框架的優(yōu)點(diǎn)與缺點(diǎn) 2 3 6 1 struts框架的優(yōu)點(diǎn) 2 3 6 1 struts框架的優(yōu)點(diǎn) 1 適應(yīng)性方面 struts 框架是開源的輕量級框架 對于大中型項(xiàng)目的開發(fā)優(yōu)勢明顯 利用 struts 框架實(shí) 現(xiàn)的應(yīng)用具有高內(nèi)聚 低耦合的特點(diǎn) 并且符合 model2 應(yīng)用開發(fā)的規(guī)范 2 文檔方面 struts 的文檔結(jié)構(gòu)清晰 在類級和方法級都很詳細(xì) 可以無需參考源代碼 并且相關(guān)的 技術(shù)文章和書籍很多 3 源代碼方面 struts 在其自身的架構(gòu)設(shè)計(jì)中采用了很多經(jīng)典設(shè)計(jì)模式 使得基于 struts 框架實(shí)現(xiàn)的應(yīng) 用具有良好的設(shè)計(jì)模式 4 工具支持方面 struts 得到很多 die 及插件的支持 使得 struts 的使用更為簡單 5 用戶界面方面 struts 的視圖部分可以使用 jsp velocity 等組件 實(shí)現(xiàn)復(fù)雜用戶界面的設(shè)計(jì) 6 創(chuàng)新性方面 struts 框架改進(jìn)了 mode12 使用標(biāo)準(zhǔn)的 webapi 和標(biāo)準(zhǔn)的 http 請求響應(yīng)模式 2 3 6 2 struts框架的缺點(diǎn) 2 3 6 2 struts框架的缺點(diǎn) struts 框架本身也存在一定的缺陷 1 使用 struts 之前 開發(fā)者要理解 struts 組件和一些特殊類以及如何交互 2 struts 沒有為設(shè)計(jì)和創(chuàng)建模型組件提供現(xiàn)成的框架 3 jsp 實(shí)現(xiàn)的視圖組件只能借助一些基本的包含和轉(zhuǎn)發(fā)功能 限制了視圖的靈活性 4 strutsaction 組件與 web 容器之間強(qiáng)耦合 無法對 action 進(jìn)行輕量級單元測試 從測 試驅(qū)動的角度來看 不利于系統(tǒng)的開發(fā) 尤其是大型系統(tǒng) 綜合以上對 web 層常用框 架的比較和分析 struts 框架提供了一種創(chuàng)建 javaweb 應(yīng)用程序的高度可配置 可擴(kuò)展 第二章 mvc 設(shè)計(jì)模式和 struts 應(yīng)用框架 15 的通用 mvc 框架結(jié)構(gòu) 對 web 應(yīng)用程序的顯示 表示和數(shù)據(jù)的代碼進(jìn)行了抽象 更好 地適應(yīng)了需求 提高了開發(fā)速度 本文所討論的管理信息系統(tǒng)采用 struts 作為 web 層的 開發(fā)框架 第三章 系統(tǒng)總體分析與設(shè)計(jì) 16 第三章第三章 系統(tǒng)總體分析與設(shè)計(jì)系統(tǒng)總體分析與設(shè)計(jì) 3 1 系統(tǒng)業(yè)務(wù)流程 3 1 系統(tǒng)業(yè)務(wù)流程 根據(jù)廣州地鐵管理信息系統(tǒng)的運(yùn)營管理特點(diǎn) 管理信息系統(tǒng)的幾個(gè)主要工作 定義 巡檢任務(wù) 記錄巡檢數(shù)據(jù) 消除設(shè)備缺陷 統(tǒng)計(jì)分析數(shù)據(jù)等 其工作流程如表 3 1 所 示 表 3 1 管理信息系統(tǒng)工作流程 步 驟 描 述 部門領(lǐng)導(dǎo)事先通過后臺系統(tǒng)安排任務(wù) 即制定某一日期某條 線路的巡檢任務(wù)由某一巡檢員承擔(dān) 可以提前安排巡檢計(jì)劃 任務(wù)未執(zhí)行前可以修改 變更 巡檢員在巡檢之前使用移動終端從后臺系統(tǒng)獲取自己當(dāng)天的 巡檢任務(wù) 下載相應(yīng)的線路 設(shè)備等信息 移動終端與巡檢員 身份相對應(yīng) 只會獲取與本人相關(guān)的任務(wù)信息 接受任務(wù)后 終端設(shè)備會顯示任務(wù)安排的巡檢線路 巡檢員 對安排的線路進(jìn)行巡檢 到達(dá)每個(gè)巡檢點(diǎn)后 巡檢員對該點(diǎn)所有設(shè)備的運(yùn)行情況進(jìn)行 檢查 記錄 系統(tǒng)同時(shí)記錄該點(diǎn)的經(jīng)緯度信息和記錄時(shí)間 一 般對設(shè)備缺陷有標(biāo)準(zhǔn)的描述項(xiàng) 巡檢員只需選擇即可 特殊情 況下可以手寫輸入備注信息 任務(wù)結(jié)束后 巡檢員通過終端設(shè)備將巡檢結(jié)果上傳到后臺管 理系統(tǒng) 并確認(rèn)任務(wù)完成 任務(wù)結(jié)果信息供領(lǐng)導(dǎo)檢查和發(fā)往其 他相關(guān)部門處理 部門領(lǐng)導(dǎo)可隨時(shí)查看任務(wù)的執(zhí)行情況和結(jié)果 了解線路的運(yùn) 行狀態(tài) 根據(jù)情況進(jìn)行處理或安排新的任務(wù) 巡檢人員根據(jù)巡檢任務(wù)進(jìn)行巡檢時(shí) 必須使用巡檢終端的 rfid 讀取設(shè)備去讀取設(shè)備電 巡檢部門領(lǐng)導(dǎo)檢 查巡檢任務(wù)完成 情況 巡檢員在巡檢任 務(wù)結(jié)束后提交結(jié) 果 在巡檢點(diǎn)對設(shè)備 情況進(jìn)行記錄 巡檢員根據(jù)任務(wù) 指定線路進(jìn)行巡 檢 巡檢員在巡檢之 前接受巡檢任務(wù) 巡檢部門領(lǐng)導(dǎo)安 排巡檢任務(wù) 第三章 系統(tǒng)總體分析與設(shè)計(jì) 17 子標(biāo)簽才能錄入該設(shè)備的相關(guān)數(shù)據(jù) 當(dāng) rfid 讀取到后 巡檢終端會自動定位到當(dāng)前設(shè) 備 并列出需要檢查的項(xiàng)目 巡檢人員逐個(gè)打開檢查項(xiàng)目并錄入巡檢數(shù)據(jù) 全部項(xiàng)目檢 查完畢后 設(shè)備自動變?yōu)橐蜒矙z 3 2 管理信息系統(tǒng)設(shè)計(jì)原則與目標(biāo) 3 2 管理信息系統(tǒng)設(shè)計(jì)原則與目標(biāo) 1 系統(tǒng)設(shè)計(jì)原則 系統(tǒng)設(shè)計(jì)原則 在確定本系統(tǒng)的設(shè)計(jì)目標(biāo)后 需要進(jìn)行系統(tǒng)設(shè)計(jì) 系統(tǒng)設(shè)計(jì)時(shí)考慮以下原則 i 按業(yè)務(wù)劃分模塊 在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí) 按業(yè)務(wù)使用 自頂向下 的原則將系統(tǒng)劃 分成各個(gè)功能模塊 以保證系統(tǒng)的結(jié)構(gòu)性和模塊化 2 各功能模塊之間的聯(lián)結(jié)關(guān)系盡可能簡單 以使相互之間具有較高的獨(dú)立性和可修 改性 3 每一個(gè)模塊都具有明確的輸入 輸出及對數(shù)據(jù)的交換功能 2 系統(tǒng)目標(biāo) 系統(tǒng)目標(biāo) 系統(tǒng)開發(fā)以廣州地鐵三號線管理信息系統(tǒng)運(yùn)營維護(hù)的實(shí)際業(yè)務(wù)需求為基礎(chǔ) 通過數(shù) 據(jù)庫管理系統(tǒng)可實(shí)現(xiàn)設(shè)備信息及巡檢結(jié)果的共享與管理 25 26 系統(tǒng)要實(shí)現(xiàn)的具體目標(biāo)有 提供部門員工 線路 定位點(diǎn)的基本信息的錄入 修改及管理 提供巡視信息的分層管理及檢查模式 缺陷等級的設(shè)定 編制巡檢任務(wù) 下發(fā)到掌上電腦 掌上電腦開發(fā)的程序能實(shí)現(xiàn)規(guī)范 完整的錄入巡 視信息 巡檢終端應(yīng)當(dāng)能夠支持通過讀取rfid標(biāo)簽來自動定位設(shè)備 能實(shí)現(xiàn)后臺管理系統(tǒng)與巡檢終端的快速準(zhǔn)確的數(shù)據(jù)傳輸 能提供各種查詢與統(tǒng)計(jì) 并能生成報(bào)表及打印 系統(tǒng)使用靈活 操作界面友好 維護(hù)方便 保證系統(tǒng)的安全 實(shí)用 能夠支持管理信息系統(tǒng)設(shè)備屬性的動態(tài)定義 可以支持?jǐn)?shù)值型 字符型 布爾型 單選
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 維修電工技師試題及答案
- 網(wǎng)店裝修操作試題及答案
- 外科臨床試題及答案
- 2025年辦公軟件供應(yīng)商協(xié)議
- 2025年銀行業(yè)務(wù)人員培訓(xùn)與發(fā)展協(xié)議
- 2025年權(quán)益轉(zhuǎn)讓策劃補(bǔ)充協(xié)議范本
- 2025年農(nóng)村經(jīng)濟(jì)合作社股份互轉(zhuǎn)協(xié)議
- 2025年酒店預(yù)訂服務(wù)合作協(xié)議
- 2025年合作策劃協(xié)議書官方范本
- 合同管理的全流程管控策略
- 考評員考試題及答案
- 2024年湖南省普通高中學(xué)業(yè)水平合格性考試地理試題(原卷版)
- 2025春季學(xué)期國開電大本科《理工英語3》一平臺在線形考綜合測試(形考任務(wù))試題及答案
- 細(xì)致解讀wps考試內(nèi)容的試題及答案
- 數(shù)據(jù)可視化與Python試題及答案
- 2025年兒童心理發(fā)展考試試題及答案
- 身股股權(quán)協(xié)議書
- 臺球股東合同協(xié)議書
- 新版《醫(yī)療器械經(jīng)營質(zhì)量管理規(guī)范》培訓(xùn)課件
- 2025年湖南興湘科技創(chuàng)新有限公司招聘6人筆試參考題庫附帶答案詳解
- 2025屆山東省濱州地區(qū)物理八下期末學(xué)業(yè)水平測試模擬試題含解析
評論
0/150
提交評論