freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

某企業(yè)招標業(yè)務管理系統(tǒng)的設計與實施畢業(yè)論文(編輯修改稿)

2025-07-25 14:54 本頁面
 

【文章內(nèi)容簡介】 2EE構(gòu)架與技術(shù)為組件開發(fā)模型提供廣泛的支持,同時也提供一組開發(fā)工具和服務,以便開發(fā)模塊化的、可重用的和平臺獨立的各種組件技術(shù)的業(yè)務邏輯。 UI層的框架UI 是 User Interface 的縮寫,它的界面是面向用戶的,可以是遠程的,也可以是本地的。主要提供給用戶一個界面,表示層負責給用戶展示業(yè)務邏輯層提供的服務,它能夠自行處理用戶的請求,自行與業(yè)務邏輯層交互,并且知道如何給用戶顯示下一個視圖[11]。該層有多個可選擇的框架,如Struts、WebWork2和Echo等。Struts: Struts是一個脫胎于Sun J2EE平臺的Mvc框架,是Apache軟件基金會旗下Jakarta項目組的一部分[12]。是本文將要重點闡述和采用的表示層框架,它主要是采用JSP和Servlet技術(shù)來實現(xiàn),關注于Controller流程,把JSP、Servlet、信息資源和自定義標簽整合到一個統(tǒng)一的框架中,開發(fā)人員不用再自己編碼,在該層借助了 Struts 來實現(xiàn)[13]:直接利用其全套MVC模式進行開發(fā),極大的節(jié)省了時間。Webwork2:不同于Struts,Webwork2是更簡單的框架,是Jive論壇采用的框架。每個Action都是一個簡單Java對象 (POJO),可以直接使用模型驅(qū)動和域?qū)ο?。不需要Actionbean類。Webwork2可以使用多種視圖即(View)技術(shù)。如JSP,F(xiàn)reemarker,Velocity等。它不象Struts需要那么多標簽庫,它擁有功能強大的腳本語言。另外,Webwork2還擁有一易于使用的驗證框架,可以不用通過Action,實現(xiàn)使用攔截器(interceptor)。(1)用 Action 類實現(xiàn) MVC中的 C。實現(xiàn)鏈接轉(zhuǎn)向、動作處理、業(yè)務邏輯。(2)借助 Struts 標簽實現(xiàn) MVC 中的 V。來完成數(shù)據(jù)呈現(xiàn)。(3)用 ActionForm 類封裝與用戶互動的數(shù)據(jù)元素。StrutsActionServlet2635JSP/HTML FORM使用Struts Tag41Strutsconfigxml業(yè)務邏輯組件數(shù)據(jù)庫StrutsActionStrutsActionForm圖 11 Struts框架圖在圖 11中有關數(shù)字表述如下:“1” StrutsAction Servlet 處理所有瀏覽器請求。 “2”根據(jù) 文件 中 預 先 配 置 好 的 設 置 ,StrutsAction Servlet 選 擇 應 該 將 請 求 轉(zhuǎn) 到 哪 個StrutsAction 子類。 “3” Action 請求處理器對傳遞到的請求數(shù)據(jù)進行適當?shù)奶幚怼?“4” 當 用 戶 提 交 表 單 時 , 將會自行創(chuàng)建一 個 類 型適 當 的的StrutsActionForm 的子類,并自行有表單中填入相應的數(shù)據(jù)。 “5” StrutsForm 子類可以提供給StrutsAction 子類,用以調(diào)用業(yè)務邏輯代碼。 “6”StrutsAction 子類完成業(yè)務功能時可以調(diào)用業(yè)務邏輯組件。 為什么要使用 Struts ?我們主要出于以下幾方面考慮: (1)Struts有利各部分的維護。因為它是將頁面顯示、業(yè)務數(shù)據(jù)、動作進行分離處理的, (2) Struts實現(xiàn)動作處理是采用 Front Controller 模式的,所有的動作請求都是經(jīng)過一個統(tǒng)一入口,然后進行分發(fā)。這樣我們可以更方便地在入口中加入一些全局控制代碼,如日志管理、安全控制、國際化編碼等。 (3)Struts 可以提供ActionForm ,它能封裝web form中的元素,使重用 web 表單成為可能。 (4)我們不用再去為每個 web 頁面寫其驗證代碼,只要借助 Struts Validator框架就可以完成web層的驗證工作,通常情況下只需通過配置即可實現(xiàn)。這就使我們的開發(fā)量大大減少了。而且驗證代碼的集中管理,也便于展開維護工作。 應用層的框架每個領域在實際的項目開發(fā)中,都有自己獨特的業(yè)務邏輯,也正因如此,很多項目中都發(fā)生代碼高度耦合的情況,而且不能與具體的業(yè)務邏輯分開處理的話,原本有可能被重用的代碼 或功能就很難被重用[16]。因此我們要把這些體現(xiàn)具體邏輯的代碼抽取出來,單獨作為一層,目的是希望通過這樣的處理,來降低它與系統(tǒng)其他部分的耦合度。 現(xiàn)實社會中世界在不斷地變化,作為現(xiàn)實中具體的業(yè)務邏輯的體現(xiàn),那該層的實現(xiàn)代碼不可避免的會發(fā)生變更。如何才能讓該層用最小的改動來適應最大的變化?這就是我們要考慮的問題。通常我們在編碼的時候會盡量考慮到同一業(yè)務實現(xiàn)多種的兼容和可擴展的能力。所以我們借助了 Spring,通過AOP 應用、面向接口編程,依賴注入、來增強系統(tǒng)擴展性,降低業(yè)務組件之間的耦合度。 Spring 框架是一個由 7 個定義良好的模塊組成的的分層架構(gòu),17]。核心容器定義了創(chuàng)建、配置和管理 bean 的方式。Spring 模塊就是構(gòu)建在核心容器之上的,Spring AOPSourcelevelMetadataAOP infrastructureSpring ORMHibemate supportiBats supportJDO supportSpring WebWebApplkationContextMutipart resolverWeb utlitiesSpring ContextApplication contextULsupportValidationJNDL EJB support andRemodelingMailSpring DAOTransaction infrastructureJOBC supportDAO supportSpring WebMVCWeb MVCFrameworkWeb ViewsJSP/VelocityPDF/ExportSpring CoreSupport utlitiesBean container圖 12 Spring 框架的7個模塊傳統(tǒng)的業(yè)務邏輯層技術(shù)主要有兩種選擇,一種是采用EJB技術(shù)。另一種就是使用由POJO構(gòu)成的業(yè)務邏輯層, Spring或者PicoContainer在運行中,是由輕量級的容器為對象提供一些企業(yè)服務(比如聲明式的事務管理),提供管理業(yè)務,提供對象定位尋址功能、提供對象的生命周期等等,現(xiàn)在比較普及的輕量級業(yè)務邏輯層框架主要有以下兩種:Spring: Spring是基于IOC概念的框架,是本文采用和將要重點闡述的業(yè)務邏輯層框架,主要包括以下特性[18]:(1)Bean管理:Spring它能夠消除singleton的缺點,更容易實現(xiàn)“編程到接口”。 即實現(xiàn)良好的面向?qū)ο缶幊谭椒?,可以有效地組織我們的中間層對象,(2)聲明式的事務管理:sPring利用AOP實現(xiàn)事務管理,而無需借助于EJB容器,利用這種方法,事務管理可以用于任何POJO中。Spring的事務管理不局限于JTA,而是可以采用不同的事務策略,如編程序的事務處理和聲明式的事務。PicoContainer:同spring框架一樣,PicoContainer也是一個基于依賴注入的業(yè)務邏輯層框架,該框架有效的管理業(yè)務邏輯對象的關系以及生命周期,使開發(fā)人員寫出高效的易于測試和維護的代碼。同時,PicoContainer框架并不要求其中的業(yè)務對象實現(xiàn)其API,提供了框架使用的靈活性。 數(shù)據(jù)層的框架通過持久化存儲來訪問對象。數(shù)據(jù)持久層框架目標是為整個項目提供一個高層、統(tǒng)一、安全和并發(fā)的數(shù)據(jù)持久機制。完成對各種數(shù)據(jù)進行持久化的編程工作,并為系統(tǒng)業(yè)務邏輯層提供服務。數(shù)據(jù)持久層提供了數(shù)據(jù)訪問方法,能夠使其它程序員避免手工編寫程序訪問數(shù)據(jù)持久層,使其專注于業(yè)務邏輯的開發(fā),并且能夠在不同項目中重用映射框架,大大簡化了數(shù)據(jù)增、刪、改、查等功能的開發(fā)過程,同時又不喪失多層結(jié)構(gòu)的天然優(yōu)勢,繼承延續(xù)J2EE特有的可伸縮性和可擴展性[19]。數(shù)據(jù)持久層是介于業(yè)務邏輯層和EIS層之間的橋梁,它封裝了與EIS層交互的邏輯。存在多種方法可用來實現(xiàn)[20]:(1)JDBC:直接基于SQL語句的訪問RDBMS,這是最為靈活的方法,然而,低級的JDBC難以使用,而且質(zhì)量差的JDBC代碼很難運轉(zhuǎn)良好。(2)Entity beans:屬于傳統(tǒng)的J2EE架構(gòu)所采用的技術(shù),CMP的Entity bean是一種分離數(shù)據(jù)訪問代碼和處理ORM的昂貴的方法,它是以應用服務器為中心的方法,即Entity bean不是將應用與某種數(shù)據(jù)庫類型而是EJB容器約束在一起。(3)第三方的0/R Mapping技術(shù)主要有:Hibernate、JDO、TopLink等。 面向?qū)ο蟮幕舅枷朊嫦驅(qū)ο蠓椒ㄊ钱斀褴浖_發(fā)的主流方法,它的基本思想是從現(xiàn)實世界客觀存在的事物或者說對象出發(fā)來構(gòu)建系統(tǒng),并且在構(gòu)建系統(tǒng)時盡可能運用人類的自然思維方式。軟件開發(fā)是對問題求解的過程,從哲學中認識論的角度看整個軟件的開發(fā)可以歸結(jié)為兩個主要的活動:人們對所要解決問題及其相關事物的認識和基于這種認識所進行的描述。認識指通過人的思維正確認識和理解系統(tǒng)所要處理的問題域中客觀存在事物和所要解決問題:弄清事物的屬性、行為和彼此的關系,找出解決問題的方法。描述指用一種語言說明人們對問題域中事物和問題及其解決方法的認識[2]。 軟件復用技術(shù)該軟件的發(fā)展是避免重復工作的解決方案,其出發(fā)點是開發(fā)應用系統(tǒng)不再使用一切從零“開始”的模式,而是采取了一些自己的工作為基礎,利用資源,在過去完全積累的應用系統(tǒng)開發(fā),包括設計,編碼,測試的例子,措施,工藝,發(fā)展知識和經(jīng)驗等,從而發(fā)展了上述系統(tǒng)的服務完成邏輯設計的關鍵集中。在現(xiàn)代軟件工程,看起來像這樣低的水平成倍成倍的代碼已經(jīng)不需求而產(chǎn)生的特定領域的大型軟件,軟件的工業(yè)化乘以從進化到倉庫總的原本已域中的模塊和應用程序框架。模塊和框架,提供了巨大動力,因為該軟件委托的重任被認為是最有前途的軟件之一乘以一種技術(shù)。軟件產(chǎn)業(yè)的發(fā)展趨勢是:基于插件式樣的軟件模塊的生產(chǎn)格局,根據(jù)框架模塊組織模式的基礎上,模塊和框架裝配式軟件生產(chǎn)模式。 HibernateHibernate是一個開放源代碼的對象關系映射框架,它已經(jīng)進行了不尋常的JDBC的輕量級對象密封,使用戶編程思想中的Java程序員可能有自己的愿望來操作數(shù)據(jù)庫。 Hibernate可以應用在任何使用JDBC的情況,也可以在Java客戶端程序?qū)嵱?,也有可能在Serviet / JSP的Web應用程序,那些使用誰最具有革命性意義的是,Hibernate可以在應用EJB的J2EE架構(gòu)中為中醫(yī)代替,完成數(shù)據(jù)持久的重任。 SpringSpring是一個已經(jīng)解決了許多在J2EE開發(fā)中常見的問題艱巨框架。Spring的管理服務對象提供一致的方法,并鼓勵面向連接的編程,但不是編程的良好習慣那種。 Spring的建設的基礎是基于使用JavaBean的Inversionof控制船只屬性。然而,這只是在一個完整的前景部分:Spring是使用IoC的成就,建造和船舶注意所有建設水平的完整的解決方案方面是獨一無二的。 Spring提供了唯一的數(shù)據(jù)訪問是抽象的,包括簡單和效益的JDBC框架,極大提高效率和降低可能的錯誤。 Spring數(shù)據(jù)訪問的建筑還集成Hibernate和其他的O / R映射解決方案。 Spring還提供了唯一的企業(yè)管理是抽象的,它可以在每一層的商業(yè)管理技術(shù)類,例如JTA或者JDBC的業(yè)務提供了一個一致的編程模型。Spring到了與標準Java語言編寫的AOP框架的規(guī)定,它提供了聲明式的商業(yè)管理及其他商業(yè)事務向的POJO。如果您還需要能夠?qū)崿F(xiàn)自己的問題。此框架是足夠強大,使得應用程序能夠放棄EJB的復雜性,同時是享受和傳統(tǒng)EJB相關的關鍵服務。 Spring還提供了可能的整合與國際奧委會船只Web框架的MVC強大和靈活。 JSONJSON(JavaScript object Notation)是一種輕量級的數(shù)據(jù)交換格式。易于開發(fā)人員閱讀和編寫。同時也易于機器解析和生成。JSON采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括c,c++,c,Java,JavaScript,Perl,python等)。這些特性使JSON成為理想的數(shù)據(jù)交換語言。本章通過對系統(tǒng)涉及的相關技術(shù)進行了對比論證分析,指出采用這些技術(shù)的原因和優(yōu)點,同時對系統(tǒng)涉及的關鍵技術(shù)問題進行了分析和研究,提出了相關的解決方案。第四章 系統(tǒng)總體設計在前文已對招標業(yè)務系統(tǒng)的需求和流程進行了詳細的調(diào)查分析,通過對系統(tǒng)開發(fā)技術(shù)選型分析之后,本章將對系統(tǒng)的體系結(jié)構(gòu)、功能結(jié)構(gòu)、網(wǎng)絡拓撲、接口和系統(tǒng)框架的設計方案進行具體論述。 系統(tǒng)體系結(jié)構(gòu)數(shù)據(jù)服務通訊管理WEBSWEB處理APPS業(yè)務功能1,2,…nDBS定時功能1,2...顯示對象通訊管理Internet/Intranet控制對象業(yè)務對象業(yè)務對象連接對象 圖 13 系統(tǒng)體系結(jié)構(gòu)圖系統(tǒng)主要由客戶端、通訊、WEB部分、應用邏輯、數(shù)據(jù)服務等部分組成,系統(tǒng)通過業(yè)務對象把它們有機的結(jié)合的一起,業(yè)務對象的定義采用動建摸態(tài)技術(shù),如訂單、合同等在系統(tǒng)處理中就一個個業(yè)務對象。它在開發(fā)階段、實施階段通過系統(tǒng)工具定義并保存在數(shù)據(jù)庫或應用服務器文件中,運行期時依據(jù)對應的標識符動態(tài)加載執(zhí)行。在使用過程中,如果業(yè)務需要調(diào)整或使用不方便,系統(tǒng)可以動態(tài)調(diào)整,它保存后只需重新起動相應的應用即可。 系統(tǒng)功能結(jié)構(gòu)招標業(yè)務管理系統(tǒng)主要由以下幾個模塊組成:項目開發(fā)管理、項目建
點擊復制文檔內(nèi)容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1