OA系統(tǒng)分析報告_第1頁
OA系統(tǒng)分析報告_第2頁
OA系統(tǒng)分析報告_第3頁
OA系統(tǒng)分析報告_第4頁
OA系統(tǒng)分析報告_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

目錄一、系統(tǒng)概述 21.1開發(fā)環(huán)境 21.2開發(fā)技術(shù) 2二、可行性分析 22.1組織和管理上的可行性 22.2經(jīng)濟(jì)可行性 22.3技術(shù)可行性 3三、需求分析 33.1功能分析 33.2系統(tǒng)建模 4四、系統(tǒng)設(shè)計 64.1系統(tǒng)設(shè)計 64.2數(shù)據(jù)庫設(shè)計 64.2.1數(shù)據(jù)庫概念設(shè)計 64.2.2數(shù)據(jù)庫邏輯設(shè)計 8五、系統(tǒng)實現(xiàn) 105.1系統(tǒng)架構(gòu) 105.2持久層Hibernate實現(xiàn) 105.2.1創(chuàng)立并配置Hibernate映射文獻(xiàn) 105.2.2開發(fā)并配置HibernateDAO層 115.3控制層Struts實現(xiàn) 115.3.1開發(fā)Struts關(guān)鍵流程代碼 115.3.2開發(fā)JSP頁面原型 115.3.3增長表單校驗功能 115.3.4調(diào)用DAO組件操作數(shù)據(jù)庫 125.4業(yè)務(wù)層Spring實現(xiàn) 125.4.1數(shù)據(jù)源配置 125.4.2配置SessionFactory 135.4.3配置事務(wù) 135.4.4配置DAO組件 135.4.5配置DAO事務(wù) 13六、系統(tǒng)運行截圖 13七、收獲和體會 17一、系統(tǒng)概述本系統(tǒng)采用三層架構(gòu),運用Struts、Hibernate和Spring技術(shù)開發(fā)的一種辦公自動化系統(tǒng),該系統(tǒng)重要包括如下幾種模塊,即日程安排模塊、工作日志模塊、短消息管理模塊、公告管理模塊、會議管理模塊。意在協(xié)助企業(yè)實現(xiàn)辦公自動化管理1.1開發(fā)環(huán)境1)開發(fā)平臺:Eclipse3.3后臺數(shù)據(jù)庫:MySQL5.0Web服務(wù)器:Tomcat6.0開發(fā)技術(shù):JSP、Struts1、Hibernate3和Spring21.2開發(fā)技術(shù)自從Servlet技術(shù)產(chǎn)生以來,J2EE的WEB開發(fā)技術(shù)與開發(fā)框架便層出不窮。這些技術(shù)和框架的產(chǎn)生,在給我們的開發(fā)帶來以便的同步,也讓我們眼花繚亂,導(dǎo)致疲于學(xué)習(xí)這些框架。然而一直保持優(yōu)勢地位的不多,目前J2EE多種框架技術(shù)的關(guān)鍵仍然是J2EE的三項基礎(chǔ)技術(shù)——JSP、JavaBean、Servlet,而開源框架還是Struts+Spring+Hibernate,目前這種組合是最佳的選擇。二、可行性分析可行性分析是系統(tǒng)開發(fā)的一項關(guān)鍵環(huán)節(jié),它是通過對整個系統(tǒng)的需求、技術(shù)及開發(fā)措施,以及開發(fā)人員、所需資金的綜合考慮以評估對于該系統(tǒng)的開發(fā)與否符合實際。可行性分析包括:組織和管理上的可行性、經(jīng)濟(jì)可行性、技術(shù)可行性。2.1組織和管理上的可行性基于中小型企業(yè)的辦公自動化系統(tǒng)采用模塊化開發(fā)措施,將整個系統(tǒng)劃分為多種功能模塊,并根據(jù)開發(fā)小組組員的實際能力分派對應(yīng)的模塊,這種將系統(tǒng)功能平行劃分的措施有助于系統(tǒng)開發(fā)的組織和管理。2.2經(jīng)濟(jì)可行性通過網(wǎng)站對企業(yè)內(nèi)部信息進(jìn)行全面的自動化管理,大大提高了企業(yè)的辦公效率。通過系統(tǒng)對企業(yè)產(chǎn)生經(jīng)營過程中的數(shù)據(jù)進(jìn)行全面的管理和記錄,防止人為處理多種數(shù)據(jù)時所產(chǎn)生的多種問題,使企業(yè)的管理進(jìn)行到科學(xué)化、系統(tǒng)化的范圍。硬件方面重要是計算機(jī),我們的實際狀況可以滿足開發(fā)任務(wù),所需資料書籍可以到圖書館翻閱或個人購置,因此整個系統(tǒng)的所需投資符合我們的支付狀況,經(jīng)濟(jì)可行性良好。2.3技術(shù)可行性基于中小型企業(yè)的辦公自動化系統(tǒng)的開發(fā)采用了先進(jìn)成熟并且符合實際應(yīng)用的開發(fā)措施,廣泛應(yīng)用于網(wǎng)站開發(fā)的網(wǎng)頁開發(fā)工具Dreamweaver、MyEclipse,動態(tài)網(wǎng)頁開發(fā)技術(shù)JSP和MVC架構(gòu)技術(shù)Struts、Spring和Hibernate,功能強(qiáng)大的數(shù)據(jù)庫管理工具M(jìn)ySQL,結(jié)合自己的實際開發(fā)能力,可以開發(fā)出較為完善的辦公自動化系統(tǒng)。三、需求分析3.1功能分析系統(tǒng)的重要功能概述如下:(1)個人通訊錄:用作目前的登錄顧客太極、修改刪除和查看自己的通訊錄。(2)日程安排:用作目前的登錄顧客添加、修改、刪除和查看自己的日程安排列表。(3)工作日志:用作目前的登錄顧客添加、修改、刪除和查看自己的工作日志列表。(4)短消息管理:用作目前的登錄顧客給系統(tǒng)內(nèi)的其他顧客發(fā)送短消息,并可以查看其他顧客發(fā)來的消息。(5)公告管理:顧客發(fā)送告知,大家都可以查看,只有發(fā)送告知的顧客才有權(quán)修改、刪除該告知。注冊登錄注冊登錄退出日程安排個人通訊錄工作日志短消息管理公告管理會議管理功能構(gòu)造圖:3.2系統(tǒng)建模3.2.1個人通訊錄取例圖個人通訊錄取例圖個人通訊錄取例圖3.2.2工作日志用例圖工作日志用例圖工作日志用例圖3.2.3日程安排用例圖日程安排用例圖日程安排用例圖3.2.4短消息管理用例圖短消息管理用例圖短消息管理用例圖3.2.5公告管理用例圖公告管理用例圖公告管理用例圖3.2.6會議管理用例圖會議管理用例圖會議管理用例圖四、系統(tǒng)設(shè)計4.1系統(tǒng)設(shè)計基于中小企業(yè)的辦公自動化系統(tǒng)采用構(gòu)造化與原型法相結(jié)合的措施。這種綜合法的長處是它兼顧了構(gòu)造化開發(fā)措施開發(fā)過程控制性強(qiáng)的特點以及原型法開發(fā)周期短、見效快的特點。采用兩者結(jié)合的形式進(jìn)行系統(tǒng)開發(fā)時,采用了構(gòu)造化生命周期法的設(shè)計思想,即自頂向下,從總體到部分,合理劃分系統(tǒng)的構(gòu)造,設(shè)計數(shù)據(jù)庫模型。在系統(tǒng)的分析與初步設(shè)計上采用原型法作出原始模型,根據(jù)實際反應(yīng)的狀況,繼續(xù)按構(gòu)造化生命周期法進(jìn)行系統(tǒng)的詳細(xì)設(shè)計及其實行與轉(zhuǎn)換、系統(tǒng)維護(hù)與評價階段的工作。合理采用綜合法,使開發(fā)過程更具靈活性,往往會獲得更好的開發(fā)效果。4.2數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是項目開發(fā)和系統(tǒng)設(shè)計中非常重要的一種環(huán)節(jié),在這里要堅持強(qiáng)調(diào)數(shù)據(jù)庫設(shè)計的重要性,是由于數(shù)據(jù)庫設(shè)計就像建設(shè)高樓大廈的根基同樣,假如設(shè)計不好,在后來的系統(tǒng)維護(hù)、變更和功能擴(kuò)充時甚至在系統(tǒng)開發(fā)過程中都會引起比較大的問題。4.2.1數(shù)據(jù)庫概念設(shè)計addressIDaddressIDusernamenamesexe-mailmobilecompanyaddresspostcode個人通訊錄模塊的E-R圖worklogIDworklogIDusernameyearmonthdaydescriptiomtitleLogtime日程安排模塊的E-R圖schedulescheduleIDusernameyearmonthdayplansmsIDsmsIDusernamesendermessageeeisReadsendtimeenoticeIDnoticeIDtitlesendercontentsendtime會議管理模塊的E-R圖meetingmeetingIDtitlesendercontentstarttimeendtimeaddress4.2.2數(shù)據(jù)庫邏輯設(shè)計邏輯構(gòu)造設(shè)計的任務(wù)是把概念構(gòu)造設(shè)計階段設(shè)計好的E-R圖轉(zhuǎn)換成與選用的DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯構(gòu)造。個人通訊錄模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型UsernameVarcha(50)顧客名否NameVarchar(50)聯(lián)絡(luò)人姓名否SexVarchar(10)性別否MobileVarchar(20)手機(jī)否e-mailVarchar(50)E-mail地址否QqVarchar(20)QQ號碼否CompanyVarchar(100)企業(yè)否AddressVarchar(100)家庭住址否PostcodeVarchar(10)郵編否工作日志模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型UsernameVarcha(50)顧客名否YearInt(4)年份否MonthInt(2)月份否DayInt(2)日期否TitleVarchar(100)日志標(biāo)題否DescriptionText日志內(nèi)容否LogtimeVarchar(20)記錄時間否日程安排模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型UsernameVarcha(50)顧客名否YearInt(4)年份否MonthInt(2)月份否DayInt(2)日期否PlanText安排內(nèi)容否短消息管理模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型UsernameVarcha(50)顧客名否SenderVarchar(50)發(fā)送者否MessageText消息內(nèi)容否SendtimeVarchar(20)發(fā)送時間否isReadVarchar(1)與否閱讀否默認(rèn)值‘0‘公告管理模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型SenderVarchar(50)公告填寫人否TitleVarchar(100)公告標(biāo)題否ContentText公告內(nèi)容否SendtimeVarchar(20)公告時間否會議管理模塊的關(guān)系數(shù)據(jù)表字段名稱字段類型字段闡明與否主鍵備注IDInt(10)唯一ID是自增字段類型SenderVarchar(50)會議填寫人否StarttimeVarchar(20)會議開始時間否EndtimeVarchar(20)會議結(jié)束時間否AddressVarchar(100)會議地點否TitleVarchar(100)會議標(biāo)題否ContentText會議內(nèi)容否五、系統(tǒng)實現(xiàn)5.1系統(tǒng)架構(gòu)本系統(tǒng)以Struts+Spring+Hibernate架構(gòu)為基礎(chǔ),按照實際的開法流程來進(jìn)行開發(fā)。包括如下:Hibernate功能開發(fā):包括創(chuàng)立Hibernate的持久化類、映射文獻(xiàn)、開發(fā)DAO類。Struts功能開發(fā):開發(fā)FormBean類、Action類、JSP頁面并進(jìn)行頁面的國際化、表單的校驗,調(diào)用Hibernate層的DAO類執(zhí)行與數(shù)據(jù)庫的交互;Spring功能開發(fā):創(chuàng)立applicationContext.xml文獻(xiàn),并在其中進(jìn)行基礎(chǔ)的Bean組件配置,包括:數(shù)據(jù)源配置、SessionFactory配置、配置事務(wù)、配置DAO組件以及配置DAO事務(wù);系統(tǒng)功能提高:包括開發(fā)分頁欄通用模塊、圖片國際化、MySQL數(shù)據(jù)庫的國際化、系統(tǒng)安全訪問等。requestSpringAOPrequestSpringAOP數(shù)據(jù)庫SpringIOCresponse控制器Struts持久層持久層Hibernate業(yè)務(wù)層SpringActionServletActionServletActionFormHibernateTemplateJSPActionHibernateDAO:5.2持久層Hibernate實現(xiàn)5.2.1創(chuàng)立并配置Hibernate映射文獻(xiàn)在進(jìn)行struts層的功能開發(fā)之前,我們需要基于Hibernate開發(fā)底層的DAO層。我們將分2個環(huán)節(jié)進(jìn)行開發(fā)。創(chuàng)立Hibernate的持久化類和映射文獻(xiàn),并在applicationContext.xml中進(jìn)行配置;開發(fā)并配置Hibernate層的PersonDAO.java、AddressDAO.java等。持久化類的抽象類有AbstractUser.java、AbstractAddress.java、AbstractNotice.java等;持久化類有Address.java、Notice.java、Schedule.java等;映射文獻(xiàn)有Address.hbm.xml、Notice.hbm.xml、Schedule.hbm.xml等,需要在applicationContext.xml中注冊該映射文獻(xiàn)。5.2.2開發(fā)并配置HibernateDAO層到目前為止,系統(tǒng)已經(jīng)具有了Hibernate的基礎(chǔ)訪問功能,下面我們要開發(fā)HibernateDAO層,使用HibernateTempiate實現(xiàn)對數(shù)據(jù)表的曾、刪、改、查的操作,包括如下三步:定義接口類開發(fā)實現(xiàn)類在applicationContext.xml中配置DAO及其代理。5.3控制層Struts實現(xiàn)5.3.1開發(fā)Struts關(guān)鍵流程代碼在以上通過對Hibernate持久化類、映射文獻(xiàn)和DAO類的開發(fā),已經(jīng)具有了數(shù)據(jù)層的功能代碼,下面我們就要開發(fā)Struts層的代碼,來調(diào)用該數(shù)據(jù)層實現(xiàn)數(shù)據(jù)庫的操作;要進(jìn)行Struts層的功能開發(fā),需要分4個環(huán)節(jié)進(jìn)行。開發(fā)Struts關(guān)鍵流程代碼開發(fā)JSP頁面原型增長表單校驗功能調(diào)用DAO類操作數(shù)據(jù)庫5.3.2開發(fā)JSP頁面原型在上面配置了<form-bean>、<action>及<Bean>元素,并編寫了表單類和Action類的原型代碼,目前要開發(fā)JSp頁面,將頁面的鏈接地址、表單祈求指向<action>,由Struts和Spring來將該祈求轉(zhuǎn)發(fā)到Action類的函數(shù)中,實現(xiàn)整個頁面的流轉(zhuǎn)。實現(xiàn)環(huán)節(jié)如下:在frame.jsp中添加一種新的菜單:該菜單是通訊錄模塊的入口,負(fù)責(zé)進(jìn)入通訊錄的列表頁面;開發(fā)數(shù)據(jù)列表頁面:新建一種通訊錄的HTML列表頁,該頁面提供增長、修改、刪除的按鈕,負(fù)責(zé)跳轉(zhuǎn)到不一樣的頁面;開發(fā)增長頁面:新建通訊錄的HTNL表單頁,負(fù)責(zé)添加通訊錄;開發(fā)修改頁面:新建修改通訊錄的HTML表單頁,負(fù)責(zé)修改通訊錄;進(jìn)行頁面文字的國際化:將以上3個JSP頁面中的中文文字提取出來,字資源文獻(xiàn)中為這些文字定義國際化標(biāo)簽,并在JSP頁面中引用這些標(biāo)簽,實現(xiàn)頁面文字的國際化顯示;定義頁面樣式表stytle.cs新建一種樣式表文獻(xiàn)stytle.css,為以上3個JSP頁面定義幾種樣式表以美化頁面。5.3.3增長表單校驗功能通過以上兩步的開發(fā),在重啟Tomcat后,進(jìn)入此模塊,此時的頁面都可以進(jìn)行正常的流轉(zhuǎn)了,只不過顯示的數(shù)據(jù)都還是假的數(shù)據(jù),沒有通過數(shù)據(jù)的校驗,以及數(shù)據(jù)庫的交互。在這里首先來深入完善JSP頁面的表單校驗功能,包括如下的環(huán)節(jié):為增長頁面和修改頁面表單增長長度限制;為表單類添加校驗功能;為增長頁面和修改頁面添加錯誤標(biāo)簽;為增長頁面和修改頁面維持表單輸入。5.3.4調(diào)用DAO組件操作數(shù)據(jù)庫目前JSP頁面、表單類的代碼都已經(jīng)開放完善了,接下來需要修改Action類中的祈求處理函數(shù),來調(diào)用Hibernate層的DAO類,實現(xiàn)與數(shù)據(jù)庫的交互。重要包括如下幾種功能:顯示列表頁面數(shù)據(jù);實現(xiàn)增長功能;實現(xiàn)修改功能;實現(xiàn)刪除功能。5.4業(yè)務(wù)層Spring實現(xiàn)Spring提供的HibernateTemplate是對Hibernate功能的封裝,通過封裝的代碼實現(xiàn)SpringIoC容器的有機(jī)結(jié)合。要使用HibernateTemplate進(jìn)行開發(fā),需要在Bean配置文獻(xiàn)中添加一系列的組件,這些組件互相注入。由此,我們需要配置如下的Bean組件。dataSource:為sessionFactory提供數(shù)據(jù)源;sessionFactory:Hibernat管理工廠,為DAO的事務(wù)管理方略對象transactionManager提供SessionFactory;transactionManagerDAO類的事務(wù)管理方略對象DAOProxy提供管理器對象‘DAO類:為DAO提供POJO類;DAOProxy:DAO的事務(wù)管理方略對象,該對象規(guī)定了DAO的管理方略,因此它需要注入DAO作為被管理的對象。進(jìn)行事務(wù)管理業(yè)需要提供事務(wù)管理器,因此也需要注入transactionManager作為事務(wù)管理器;Action類:該類是響應(yīng)處理類,負(fù)責(zé)調(diào)用DAO函數(shù)即可實現(xiàn)數(shù)據(jù)庫的訪問,而對于DAO的訪問都將在DAOProxy的監(jiān)管之下。5.4.1數(shù)據(jù)源配置開發(fā)數(shù)據(jù)庫代碼的第一步就是配置與數(shù)據(jù)連接。配置的過程很簡樸,只需在applicationContext.xml添加一種名稱為dataSource的<Bean>,指向的類為DBCP的數(shù)據(jù)源類,并指定4個數(shù)據(jù)參數(shù)。driverClossame:指定數(shù)據(jù)庫連接的驅(qū)動org.gjt.mm.mysql.Druver;url:指定數(shù)據(jù)庫連接的URL地址jdbc:mysql://localhost:3030/MyOA;us

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論