

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于.net的PSP系統(tǒng)的軟件設(shè)計(jì)和實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p> 本系統(tǒng)主要使用了Jsp、Struts2、Spring以及Hibernate技術(shù),采用目前網(wǎng)站開(kāi)發(fā)中較為流行的MVC設(shè)計(jì)架構(gòu)。Struts2技術(shù)主要用于處理頁(yè)面的跳轉(zhuǎn)和對(duì)業(yè)務(wù)方法的調(diào)用,目的是為了分離視圖層和控制層。Spring 技術(shù)主要用于在
2、Struts與Hibernate技術(shù)之間的解耦操作,提高程序的重用性、可維護(hù)性以及健壯性。Hibernate技術(shù)是為了實(shí)現(xiàn)用面向?qū)ο蟮乃枷雭?lái)管理和使用數(shù)據(jù)庫(kù)技術(shù),實(shí)現(xiàn)程序與數(shù)據(jù)庫(kù)之間的低耦合。</p><p> 文章介紹了使用java和xml技術(shù)開(kāi)發(fā)網(wǎng)站系統(tǒng)的詳細(xì)過(guò)程,介紹了項(xiàng)目背景和開(kāi)發(fā)意義,同時(shí)包含了對(duì)系統(tǒng)開(kāi)發(fā)環(huán)境與技術(shù)的介紹。在系統(tǒng)分析與設(shè)計(jì)部分,對(duì)系統(tǒng)功能做出了詳細(xì)的描述,并對(duì)各個(gè)功能模塊進(jìn)行了分析,包
3、括模塊顯示界面、使用的數(shù)據(jù)及函數(shù)調(diào)用過(guò)程等。使用類(lèi)圖闡述了本系統(tǒng)的設(shè)計(jì)思路,使用用例圖和時(shí)序圖來(lái)協(xié)助說(shuō)明系統(tǒng)的設(shè)計(jì)方案。在系統(tǒng)實(shí)現(xiàn)與測(cè)試階段,使用了流程圖進(jìn)一步展現(xiàn)了系統(tǒng)功能的實(shí)現(xiàn)過(guò)程。</p><p> 該系統(tǒng)將會(huì)給各鐘表銷(xiāo)售門(mén)店帶來(lái)方便,其功能需求也會(huì)進(jìn)一步提高和穩(wěn)定。我們期待該系統(tǒng)能為當(dāng)今社會(huì)更好的服務(wù)。</p><p><b> 目 錄</b></p
4、><p><b> 第1章 緒論1</b></p><p> 1.1 開(kāi)發(fā)背景1</p><p> 1.2開(kāi)發(fā)思路及主要方法1</p><p> 1.3.我的PSP管理2</p><p><b> 第2章開(kāi)發(fā)語(yǔ)言3</b></p><p&g
5、t; 2.1.1 系統(tǒng)開(kāi)發(fā)工具與運(yùn)行平臺(tái)3</p><p> 2.1.2 開(kāi)發(fā)語(yǔ)言4</p><p> 2.2 相關(guān)技術(shù)簡(jiǎn)介5</p><p> 2.2.1動(dòng)態(tài)編程5</p><p> 2.2.2系統(tǒng)采用技術(shù)介紹10</p><p> 第3章系統(tǒng)分析與設(shè)計(jì)11</p><p&
6、gt; 3.1 用戶(hù)需求的獲取11</p><p> 3.2 系統(tǒng)用戶(hù)分析11</p><p> 3.3 系統(tǒng)功能分析11</p><p> 3.4數(shù)據(jù)庫(kù)分析與設(shè)計(jì)12</p><p> 3.5 系統(tǒng)詳細(xì)設(shè)計(jì)12</p><p> 3.5.1 系統(tǒng)頁(yè)面設(shè)計(jì)12</p><p&
7、gt; 第4章 系統(tǒng)實(shí)現(xiàn)與測(cè)試13</p><p> 4.1 重要模塊說(shuō)明13</p><p><b> 結(jié)論16</b></p><p><b> 致謝18</b></p><p><b> 參考文獻(xiàn)19</b></p><p>&
8、lt;b> 第1章 緒論</b></p><p><b> 1.1 開(kāi)發(fā)背景</b></p><p> 個(gè)人軟件過(guò)程(PSP)是一種可用于控制、管理和改進(jìn)個(gè)人工作方式的自我持續(xù)改進(jìn)過(guò)程,是一個(gè)包括軟件開(kāi)發(fā)表格、指南和規(guī)程的結(jié)構(gòu)化框架。PSP與具體 的技術(shù)(程序設(shè)計(jì)語(yǔ)言、工具或者設(shè)計(jì)方法)相對(duì)獨(dú)立,其原則能夠應(yīng)用到幾乎任何的軟件工程任務(wù)之中。PS
9、P能夠說(shuō)明個(gè)體軟件過(guò)程的原則; 幫助軟件工程師作出準(zhǔn)確的計(jì)劃;確定軟件工程師為改善產(chǎn)品質(zhì)量要采取的步驟;建立度量個(gè)體軟件過(guò)程改善的基準(zhǔn);確定過(guò)程的改變對(duì)軟件工程師能力的影響。其中,PSP又包括過(guò)程改進(jìn),時(shí)間管理,制訂計(jì)劃缺陷管理幾個(gè)方面。在CMM1.1版本的18個(gè)關(guān)鍵過(guò)程域中有12個(gè)與PSP有關(guān),據(jù)統(tǒng)計(jì),軟件項(xiàng)目開(kāi)發(fā)成本的70%取決于軟件開(kāi)發(fā)人員個(gè)人的技能、經(jīng)驗(yàn)和工作習(xí)慣。因此, 一個(gè)單位的軟件開(kāi)發(fā)人員如能接受PSP培訓(xùn),對(duì)該單位軟件能
10、力成熟度的升級(jí)是一個(gè)有力的保證。CMM側(cè)重于軟件企業(yè)中有關(guān)軟件過(guò)程的宏觀(guān)管理,面向軟件開(kāi) 發(fā)單位,PSP則側(cè)重于企業(yè)中有關(guān)軟件過(guò)程的微觀(guān)優(yōu)化,面向軟件開(kāi)發(fā)人員。二者互相支持,互相補(bǔ)充,缺一不可。</p><p> 按照PSP規(guī)程,改進(jìn)軟件過(guò)程的步驟首先需要明確質(zhì)量目標(biāo),也就是軟件將要在功能和性能上滿(mǎn)足的要求和用戶(hù)潛在的需求。接著就是度量產(chǎn)品質(zhì)量,有了目標(biāo)還 不行,目標(biāo)只是一個(gè)原則性的東西,還不便于實(shí)際操作和判斷
11、,因此,必須對(duì)目標(biāo)進(jìn)行分解和度量,使軟件質(zhì)量能夠"測(cè)量"。然后就是理解當(dāng)前過(guò)程,查找問(wèn)題, 并對(duì)過(guò)程進(jìn)行調(diào)整。最后應(yīng)用調(diào)整后的過(guò)程,度量實(shí)踐結(jié)果,將結(jié)果與目標(biāo)做比較,找出差距,分析原因,對(duì)軟件過(guò)程進(jìn)行持續(xù)改進(jìn)。</p><p> 就象CMM為軟件企業(yè)的能力提供一個(gè)階梯式 的進(jìn)化框架一樣,PSP為個(gè)體的能力也提供了一個(gè)階梯式的進(jìn)化框架,以循序漸進(jìn)的方法介紹過(guò)程的概念,每一級(jí)別都包含了更低一級(jí)別
12、中的所有元素,并增加了 新的元素。這個(gè)進(jìn)化框架是學(xué)習(xí)PSP過(guò)程基本概念的好方法,它賦予軟件人員度量和分析工具,使其清楚地認(rèn)識(shí)到自己的表現(xiàn)和潛力,從而可以提高自己的技能和 水平。</p><p> 1.2開(kāi)發(fā)思路及主要方法</p><p> 在上這門(mén)選修課之前,我對(duì)PSP個(gè)人軟件過(guò)程可以說(shuō)是一點(diǎn)都不了解,只知道PSP是一款游戲機(jī)。經(jīng)過(guò)了老師的講解,我才對(duì)PSP個(gè)人軟件過(guò)程有了初步的了解。
13、 原來(lái),我以為開(kāi)發(fā)軟件靠的只是技術(shù),只要掌握了編程技巧,把相應(yīng)的語(yǔ)言學(xué)好,就能開(kāi)發(fā)出優(yōu)秀的軟件??墒牵瑢W(xué)習(xí)幾節(jié)課后,聽(tīng)了您對(duì)PSP的講解,我才明白要要想開(kāi)發(fā)出好的軟件,不僅需要真才實(shí)干,還要有好的規(guī)劃好自己的時(shí)間和其他方面。由于我是計(jì)算機(jī)專(zhuān)業(yè)的學(xué)生,可能對(duì)這些知識(shí)接觸較少,有說(shuō)的不太對(duì)的地方,還請(qǐng)老師以后多指教。</p><p> 我認(rèn)為PSP包括了很多方面,其中有對(duì)代碼的不斷修改,通過(guò)測(cè)量來(lái)發(fā)現(xiàn)問(wèn)題,并改正
14、問(wèn)題。還有對(duì)自己的時(shí)間的合理利用,做切實(shí)可行的計(jì)劃,按照計(jì)劃進(jìn)行工作,這樣可以了解計(jì)劃存在哪些問(wèn)題,有助于更好的計(jì)劃下一個(gè)項(xiàng)目。按照好的計(jì)劃完成工作,由于軟件中的許多錯(cuò)誤都是由于粗心大意引起的,所以合理利用時(shí)間,計(jì)劃工作是很有用的,可以有效的減少這些錯(cuò)誤。</p><p> 我認(rèn)為PSP也是一種很好的工作和學(xué)習(xí)的方法,它可以使我們更好的學(xué)習(xí)和工作,最大化的利用時(shí)間,提高工作效率。這就是我對(duì)PSP的的認(rèn)識(shí),以后的
15、工作中我會(huì)通過(guò)PSP對(duì)自己的工作做較好的計(jì)劃,更好的體會(huì)PSP給工作帶來(lái)的益處,對(duì)它進(jìn)一步的了解。</p><p> 1.3.我的PSP管理</p><p><b> (1)制定計(jì)劃</b></p><p> 每天要做的事情很多,如果不制定一個(gè)很好的計(jì)劃就總會(huì)不能按計(jì)劃完作,尤其到了周六日的時(shí)候,早晨一睡就是一上午,會(huì)浪費(fèi)很多時(shí)間,所以我
16、自已制定了周日一天的計(jì)劃。</p><p><b> (2)過(guò)程改進(jìn)</b></p><p> PSP需要不斷的改進(jìn)。</p><p> 就是在不斷的測(cè)量中發(fā)現(xiàn)問(wèn)題和改正錯(cuò)誤。這學(xué)期的c語(yǔ)言作業(yè)中我就通過(guò)不斷的調(diào)試,發(fā)現(xiàn)錯(cuò)誤,然后改進(jìn),并完善程序。我編的是一個(gè)貪食蛇的小游戲,編好后,我發(fā)現(xiàn)只能實(shí)現(xiàn)玩家控制一條小蛇吃蛋,增加長(zhǎng)度。雖然做好了
17、,但是和我玩過(guò)的絕大多數(shù)游戲比起來(lái),簡(jiǎn)直太簡(jiǎn)單了,可玩性相當(dāng)差,于是我又在頭腦中形成了我想要的游戲的樣子,以那樣的為目標(biāo),一點(diǎn)點(diǎn)改進(jìn)我程序。如加入音樂(lè),加入其他食物(得分食物,加速食物等),增加主菜單,增加一些關(guān)卡,</p><p> 調(diào)試過(guò)程也是一個(gè)不斷與目標(biāo)看齊,改進(jìn)程序的過(guò)程,就像一開(kāi)始我加入音樂(lè)時(shí),發(fā)現(xiàn)是在游戲之前播放音樂(lè),播放完成后,才能進(jìn)入游戲,于是我查找書(shū)籍,反復(fù)調(diào)試,最后成功達(dá)到音樂(lè)做為背景音樂(lè)
18、的效果。就這樣朝著目標(biāo)不斷改進(jìn),最后終于達(dá)到了期望的結(jié)果。</p><p><b> 第2章開(kāi)發(fā)語(yǔ)言</b></p><p> 2.1.1 系統(tǒng)開(kāi)發(fā)工具與運(yùn)行平臺(tái)</p><p> 由于Linux是一套具有Unix全部功能的免費(fèi)操作系統(tǒng),它在眾多的軟件中占有很大的優(yōu)勢(shì),為廣大的計(jì)算機(jī)愛(ài)好者提供了學(xué)習(xí)、探索以及修改計(jì)算機(jī)操作系統(tǒng)內(nèi)核的機(jī)會(huì)。
19、</p><p> 操作系統(tǒng)是一臺(tái)計(jì)算機(jī)必不可少的系統(tǒng)軟件,是整個(gè)計(jì)算機(jī)系統(tǒng)的靈魂。一個(gè)操作系統(tǒng)是一個(gè)復(fù)雜的計(jì)算機(jī)程序集,它提供操作過(guò)程的協(xié)議或行為準(zhǔn)則。沒(méi)有操作系統(tǒng),計(jì)算機(jī)就無(wú)法工作,就不能解釋和執(zhí)行用戶(hù)輸入的命令或運(yùn)行簡(jiǎn)單的程序。大多數(shù)操作系統(tǒng)都是由一些主要的軟件公司支持的商品化程序,用戶(hù)只能有償使用。如果用戶(hù)購(gòu)買(mǎi)了一個(gè)操作系統(tǒng),他就必須滿(mǎn)足供應(yīng)商所要求的一切條件。因?yàn)椴僮飨到y(tǒng)是系統(tǒng)程序,用戶(hù)不能擅自修改或
20、試驗(yàn)操作系統(tǒng)的內(nèi)核。這對(duì)于廣大計(jì)算機(jī)愛(ài)好者來(lái)說(shuō)無(wú)疑是一種束縛。</p><p> 要想發(fā)揮計(jì)算機(jī)的作用,僅有操作系統(tǒng)還不夠,用戶(hù)還必須要有各種應(yīng)用程序的支持。應(yīng)用程序是用于處理某些工作(如字處理)的軟件包,通常它也只能有償使用。每個(gè)應(yīng)用程序的軟件包都為特定的操作系統(tǒng)和機(jī)器編寫(xiě)。使用者無(wú)權(quán)修改這些應(yīng)用程序。使用Linux,可以將操作系統(tǒng)變成一種操作環(huán)境。</p><p> 由于Linux
21、是一套自由軟件,用戶(hù)可以無(wú)償?shù)氐玫剿捌湓创a,可以無(wú)償?shù)孬@得大量的應(yīng)用程序,而且可以任意地修改和補(bǔ)充它們。這對(duì)用戶(hù)學(xué)習(xí)、了解Unix操作系統(tǒng)的內(nèi)核非常有益。 學(xué)習(xí)和使用Linux,能為用戶(hù)節(jié)省一筆可觀(guān)的資金。Linux是目前唯一可免費(fèi)獲得的、為PC機(jī)平臺(tái)上的多個(gè)用戶(hù)提供多任務(wù)、多進(jìn)程功能的操作系統(tǒng),這是人們要使用它的主要原因。就PC機(jī)平臺(tái)而言,Linux提供了比其他任何操作系統(tǒng)都要強(qiáng)大的功能,Linux還可以使用戶(hù)遠(yuǎn)離各種商品化軟件提
22、供者促銷(xiāo)廣告的誘惑,再也不用承受每過(guò)一段時(shí)間就升級(jí)之苦,因此,可以節(jié)省大量用于購(gòu)買(mǎi)或升級(jí)應(yīng)用程序的資金。</p><p> Linux不僅為用戶(hù)提供了強(qiáng)大的操作系統(tǒng)功能,而且還提供了豐富的應(yīng)用軟件。用戶(hù)不但可以從Internet上下載Linux及其源代碼,而且還可以從Internet上下載許多Linux的應(yīng)用程序??梢哉f(shuō),Linux本身包含的應(yīng)用程序以及移植到Linux上的應(yīng)用程序包羅萬(wàn)象,任何一位用戶(hù)都能從有
23、關(guān)Linux的網(wǎng)站上找到適合自己特殊需要的應(yīng)用程序及其源代碼,這樣,用戶(hù)就可以根據(jù)自己的需要下載源代碼,以便修改和擴(kuò)充操作系統(tǒng)或應(yīng)用程序的功能。這對(duì)Windows NT、Windows98、MS-DOS或OS/2等商品化操作系統(tǒng)來(lái)說(shuō)是無(wú)法做到的。</p><p> Linux為廣大用戶(hù)提供了一個(gè)在家里學(xué)習(xí)和使用Unix操作系統(tǒng)的機(jī)會(huì)。盡管Linux是由計(jì)算機(jī)愛(ài)好者們開(kāi)發(fā)的,但是它在很多方面上是相當(dāng)穩(wěn)定的,從而為
24、用戶(hù)學(xué)習(xí)和使用目前世界上最流行的Unix操作系統(tǒng)提供了廉價(jià)的機(jī)會(huì)?,F(xiàn)在有許多CD-ROM供應(yīng)商和軟件公司(Linux操作系統(tǒng)。Linux成為Unix系統(tǒng)在個(gè)人計(jì)算機(jī)上的一個(gè)代用品,并能用于替代那些較為昂貴的系統(tǒng)。因此,如果一個(gè)用戶(hù)在公司上班的時(shí)候在Unix系統(tǒng)上編程,或者在工作中是一位Unix的系統(tǒng)管理員,他就可以在家里安裝一套Unix的兼容系統(tǒng),即Linux系統(tǒng),在家中使用Linux就能夠完成一些工作任務(wù)。</p>&l
25、t;p><b> 2.1系統(tǒng)語(yǔ)言</b></p><p> 2.1.2 開(kāi)發(fā)語(yǔ)言</p><p> sp.net2.0是一種動(dòng)態(tài)網(wǎng)站高級(jí)編程語(yǔ)言。 asp.net2.0是微軟公司的最新版本,是一種建立在公共語(yǔ)言運(yùn)行庫(kù)上的編程框架,可用于服務(wù)器上開(kāi)發(fā)強(qiáng)大的web應(yīng)用程序。asp.net2.0不但執(zhí)行效率大大提高,對(duì)代碼的控制也做的很好。并且支持web
26、controls 功能和多種語(yǔ)言。以提高安全性,以管理性和高擴(kuò)展性。 asp.net技術(shù)從1.0升級(jí)到1.1的變化不大,但是升級(jí)到2.0,卻發(fā)生了相當(dāng)大的變化,在開(kāi)發(fā)過(guò)程中,微軟公司深入市場(chǎng),針對(duì)大量開(kāi)發(fā)人員和軟件使用者,進(jìn)行了卓有成效的研究,并為其指定了開(kāi)發(fā)代號(hào),asp.net2.0設(shè)計(jì)目標(biāo)的核心,可以用一個(gè)詞來(lái)形容--簡(jiǎn)化。因?yàn)槠湓O(shè)計(jì)目的是將應(yīng)用程序代碼數(shù)量減少百分之七十以上,改變過(guò)去那種需要編寫(xiě)很多重復(fù)行代碼的狀況,盡可能做到
27、寫(xiě)很少的代碼就可以完成任務(wù)。對(duì)于軟件工程師來(lái)說(shuō),asp.net2.0是web開(kāi)發(fā)史上的一個(gè)重要的里程碑! asp.net2.0的新特性: 生產(chǎn)效率,使用新增的asp.net2.0服務(wù)器控件和包含新增功能的現(xiàn)有控件,可以輕松的創(chuàng)建asp.net2.0網(wǎng)頁(yè)和應(yīng)用程序。 靈活性和可擴(kuò)展性,很多asp.</p><p> 編輯本段.無(wú)論如何,.NET 4.0已經(jīng)在叩開(kāi)新年的大門(mén)之時(shí),以高調(diào)的姿態(tài)迎來(lái)一片掌聲。廣
28、大的技術(shù)愛(ài)好者不會(huì)等待太長(zhǎng)的時(shí)間,就能感受C#發(fā)展中的又一次變革。隨著.NET 4.0在2009年的發(fā)布,我們對(duì)于C# 4.0的關(guān)注也將與日俱增??傮w而言,C# 4.0的重頭戲主要著眼在以下幾個(gè)方面:動(dòng)態(tài)編程 · 并行計(jì)算 后期綁定 · 協(xié)變與逆變 廢話(huà)少說(shuō),接下來(lái)我們一一領(lǐng)略C# 4.0中的語(yǔ)言特性。 </p><p> 2.2 相關(guān)技術(shù)簡(jiǎn)介</p><p>&l
29、t;b> 2.2.1動(dòng)態(tài)編程</b></p><p> 眾所周知,C#是靜態(tài)強(qiáng)類(lèi)型語(yǔ)言。而在很多情況下,提供“動(dòng)態(tài)”行為,是常常發(fā)生的事情,例如通過(guò)反射在運(yùn)行時(shí)訪(fǎng)問(wèn).NET類(lèi)型、調(diào)用動(dòng)態(tài)語(yǔ)言對(duì)象、訪(fǎng)問(wèn)COM對(duì)象等,都無(wú)法以靜態(tài)類(lèi)型來(lái)獲取。因此, C# 4.0引入的又一個(gè)全新的關(guān)鍵字dynamic,也同時(shí)引入了改善靜態(tài)類(lèi)型與動(dòng)態(tài)對(duì)象的交互能力,這就是動(dòng)態(tài)查找(Dynamic Lookup)例如
30、:就像一個(gè)object可以代表任何類(lèi)型,dynamic使得類(lèi)型決斷在運(yùn)行時(shí)進(jìn)行,方法調(diào)用、屬性訪(fǎng)問(wèn)、委托調(diào)用都可動(dòng)態(tài)分派。同時(shí),動(dòng)態(tài)特性還體現(xiàn)在構(gòu)建一個(gè)動(dòng)態(tài)對(duì)象,在C# 4.0實(shí)現(xiàn)IDynamicObject接口的類(lèi)型,可以完全定義動(dòng)態(tài)操作的意義,通過(guò)將C#編譯器作為運(yùn)行時(shí)組件來(lái)完成由靜態(tài)編譯器延遲的操作,例如:dynamic d = new Foo(); .MyMethod(s,3,null); 在具體執(zhí)行過(guò)程中,C#的運(yùn)行時(shí)綁定器基
31、于運(yùn)行時(shí)信息,通過(guò)反射獲取d的實(shí)際類(lèi)型Foo,然后在Foo類(lèi)型上就MyMethod方法進(jìn)行方法查找和重載解析,并執(zhí)行調(diào)用,這正是動(dòng)態(tài)調(diào)用的背后秘密:DLR。在.NET 4.0中將引入重要的底層組件DLR(Dynamic L</p><p> Visual Basic是一種高級(jí)程序設(shè)計(jì)語(yǔ)言,不具備低級(jí)語(yǔ)言的功能,對(duì)訪(fǎng)問(wèn)機(jī)器硬zz件的操作不太容易實(shí)現(xiàn)。但它可以通過(guò)動(dòng)態(tài)鏈接庫(kù)技術(shù)將C/C++或匯編語(yǔ)言編寫(xiě)的程序加入到
32、Visual Basic應(yīng)用程序中,可以像調(diào)用內(nèi)部函數(shù)一樣調(diào)用其他語(yǔ)言編寫(xiě)的函數(shù)。此外,通過(guò)動(dòng)態(tài)鏈接庫(kù),還可以調(diào)用Windows應(yīng)用程序接口(API)函數(shù),實(shí)現(xiàn)SDK所具有的功能。</p><p> 圖1-1 Struts 2的MVC實(shí)現(xiàn)示意圖</p><p><b> 工作流程:</b></p><p> 用戶(hù)提交Request請(qǐng)求信息
33、。</p><p> FilterDispatcher詢(xún)問(wèn)ActionMapper是否需要調(diào)用某個(gè)Action來(lái)處理這個(gè)(HttpServlet Request)請(qǐng)求,如果ActionMapper決定需要調(diào)用某個(gè)Action,F(xiàn)ilterDispatcher則把請(qǐng)求的處理交給ActionProxy。</p><p> ActionProxy通過(guò)Configuration Manager
34、(struts.xml)詢(xún)問(wèn)框架的配置文件,找到需要調(diào)用的Action類(lèi)。</p><p> ActionProxy創(chuàng)建一個(gè)ActionInvocation實(shí)例,同時(shí)ActionInvocation通過(guò)代理模式調(diào)用Action。但在調(diào)用之前,ActionInvocation會(huì)根據(jù)配置加載Action相關(guān)的所有Interceptor(攔截器)。</p><p> 一旦Action執(zhí)行完畢
35、,ActionInvocation負(fù)責(zé)根據(jù)struts.xml中的配置找到對(duì)應(yīng)的返回結(jié)果result。</p><p> Spring 簡(jiǎn)介:Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),可以選擇是使用內(nèi)置的 Spring Web 框架還是 Struts 這樣的 Web 框架。通過(guò)策略接口,Spring 框架是高度可配置的,而且包含多種視圖技術(shù)
36、,例如 JavaServer Pages(JSP)技術(shù)、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的視圖,所以不僅僅限于使用 JSP 技術(shù)。Spring MVC 分離了控制器、模型對(duì)象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進(jìn)行定制。如下圖1-2是Spring的MVC實(shí)現(xiàn)示意圖,</p><p> 圖1-2 Spring的MVC實(shí)現(xiàn)示意圖</p
37、><p><b> 工作流程:</b></p><p> DispatcherServlet接收到請(qǐng)求后,根據(jù)對(duì)應(yīng)配置文件中配置的處理器映射,找到對(duì)應(yīng)的處理器映射項(xiàng)(HandlerMapping),根據(jù)配置的映射規(guī)則,找到對(duì)應(yīng)的處理器(Handler)。</p><p> 調(diào)用相應(yīng)處理器中的處理方法,處理該請(qǐng)求,處理器處理結(jié)束后會(huì)將一個(gè)Mod
38、elAndView類(lèi)型的數(shù)據(jù)傳給DispatcherServlet,這其中包含了處理結(jié)果的視圖和視圖中要使用的數(shù)據(jù)。</p><p> DispatcherServlet根據(jù)得到的ModelAndView中的視圖對(duì)象,找到一個(gè)合適的ViewResolver(視圖解析器),根據(jù)視圖解析器的配置,DispatcherServlet將視圖要顯示的數(shù)據(jù)傳給對(duì)應(yīng)的視圖,最后給瀏覽器構(gòu)造一個(gè)HTTP響應(yīng)。</p>
39、;<p> DispatcherServlet是整個(gè)Spring MVC的核心。它負(fù)責(zé)接收HTTP請(qǐng)求組織協(xié)調(diào)Spring MVC的各個(gè)組成部分。其主要工作有以下三項(xiàng):</p><p> ?。?)截獲符合特定格式的URL請(qǐng)求。</p><p> ?。?)初始化DispatcherServlet上下文對(duì)應(yīng)的WebApplicationContext,并將其與業(yè)務(wù)層、持久化層的
40、WebApplicationContext建立關(guān)聯(lián)。</p><p> ?。?)初始化Spring MVC的各個(gè)組成組件,并裝配到DispatcherServlet中。</p><p> Hibernate技術(shù)簡(jiǎn)介: </p><p> Hibernate是一個(gè)數(shù)據(jù)持久層框架,是一種實(shí)現(xiàn)對(duì)象和聯(lián)系之間映射(O/R Mapping)的工具,它對(duì)JDBC執(zhí)行 了輕量
41、級(jí)的對(duì)象封裝,使程序員可以運(yùn)用對(duì)象編程思想來(lái)操作數(shù)據(jù)庫(kù)。它不僅提供了從Java類(lèi)到數(shù)據(jù)表的映射,也提供了數(shù)據(jù)查詢(xún)和恢復(fù)機(jī)制。相對(duì)于運(yùn)用 JDBC和SQL來(lái)操作數(shù)據(jù)庫(kù),運(yùn)用 Hibernate能大大的提高實(shí)現(xiàn)的效率。Hibernate框架用配置文件的形式來(lái)定義Java對(duì)象和數(shù)據(jù)表之間的映射聯(lián)系,同時(shí)在更深的層面將數(shù)據(jù)表之間的聯(lián)系解釋為Java對(duì)象之間的繼承及包含等聯(lián)系。通過(guò)運(yùn)用 HQL語(yǔ)句將復(fù)雜的聯(lián)系算法用對(duì)象的方式描述,在很大程度上簡(jiǎn)化
42、了對(duì)數(shù)據(jù)的查詢(xún),加快了開(kāi)發(fā)的效率。在Hibernate中有一個(gè)基本而直觀(guān)的API,用于對(duì)數(shù)據(jù)庫(kù)所表示的對(duì)象執(zhí)行查詢(xún)。要建立或修改這些對(duì)象,只需在程序中與它們執(zhí)行 交互,然后告訴Hibernate保存即可。這樣,大量封裝持久化操作的業(yè)務(wù)邏輯不再須要編寫(xiě)煩瑣的JDBC語(yǔ)句,從而使數(shù)據(jù)持久層得到了極大的簡(jiǎn)化Hibernate 是一種新的 ORM 映射工具,它不僅提供了從 Java 類(lèi)到數(shù)據(jù)表之間的映射,也提供了數(shù)據(jù)查詢(xún)和恢復(fù)機(jī)制。相對(duì)于<
43、;/p><p> MVC設(shè)計(jì)模式:模式—視圖—控制器(Model—View—Controller,MVC)是一種先進(jìn)的設(shè)計(jì)模式。是Trygve Reenskaug教授于1978年最早開(kāi)發(fā)的一個(gè)設(shè)計(jì)模版或基本結(jié)構(gòu),其目的是以會(huì)話(huà)的形式提供方便的GUI支持。三層結(jié)構(gòu)的特點(diǎn)是:所以下層向上層提供調(diào)用的接口,具體實(shí)現(xiàn)細(xì)節(jié)對(duì)上層透明,層與層之間存在自上而下的依賴(lài)關(guān)系,即上層會(huì)訪(fǎng)問(wèn)下層的API層,但下層不依賴(lài)于上層。視圖(Vi
44、ew)代表用戶(hù)交互界面,對(duì)于Web應(yīng)用來(lái)說(shuō),可以概括為HTML界面,但有可能為XHTML、XML和Applet。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個(gè)應(yīng)用可能有很多不同的視圖,MVC設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶(hù)的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。模型(Model):就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過(guò)程對(duì)其它層來(lái)說(shuō)是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),并返回
45、最終的處理結(jié)果??刂?Controller)可以理解為從用戶(hù)接收請(qǐng)求, 將模型與視圖匹配在一起,共同完成用戶(hù)的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它</p><p> 圖1-4 MVC模型</p><p> MVC是一種通過(guò)3個(gè)不同部分構(gòu)造一個(gè)軟件或組件的理想辦法:</p><p> 模式(Model)—用于存儲(chǔ)數(shù)據(jù)的對(duì)象 </p>
46、<p> 視圖(View)—為模式提供數(shù)據(jù)顯示的對(duì)象。 </p><p> 控制器(Controller)—負(fù)責(zé)具體的業(yè)務(wù)邏輯操作,即控制器根據(jù)視圖提出的要求對(duì)數(shù)據(jù)做出處理,并將有關(guān)結(jié)果存儲(chǔ)到模型中,同時(shí)負(fù)責(zé)讓模型和視圖進(jìn)行必要的交互,當(dāng)模型中的數(shù)據(jù)變化時(shí),讓視圖更新顯示。 </p><p> 從面向?qū)ο蟮慕嵌瓤矗琈VC結(jié)構(gòu)可以使程序更具有對(duì)象化特性,也更容易維護(hù)。在設(shè)計(jì)程
47、序時(shí),可以將某個(gè)對(duì)象看做“模型”,然后為“模型”提供恰當(dāng)?shù)娘@示組件,即“視圖”。在MVC模式中,“視圖”、“模型”和“控制器”之間是松散耦合結(jié)構(gòu),便于系統(tǒng)的維護(hù)和擴(kuò)展。</p><p> 2.2.2系統(tǒng)采用技術(shù)介紹</p><p> 本系統(tǒng)采用了 .net、CMM技術(shù),采用MVC架構(gòu)。zCMM與 PSP 在20世紀(jì) 80年代后期到90年代早期,SEI開(kāi)發(fā)了能力成熟度模型(CMM),為
48、軟件開(kāi)發(fā)總組織級(jí)的最佳實(shí)踐。SEI特別會(huì)員 Watts Humphrey決定將 CMM的基本原理應(yīng)用于單個(gè)開(kāi)發(fā)的軟件開(kāi)發(fā)實(shí)踐中。個(gè)人軟件過(guò)程(PSP)就是他努力的成果,為單個(gè)軟件開(kāi)發(fā)人員設(shè)計(jì)的五級(jí)過(guò)程。 </p><p> CMM與 TSP </p><p> 不久大家就發(fā)現(xiàn),雖然使用 PSP可以取得優(yōu)異的結(jié)果,但是如果周?chē)沫h(huán)境不能鼓勵(lì)并且要守 PSP實(shí)踐,這些必要的規(guī)范性是幾乎
49、不可能得到維持的。所以漢弗萊為大多數(shù)組織中最小作單位——項(xiàng)目組,開(kāi)發(fā)了團(tuán)隊(duì)軟件過(guò)程(TSP),TSP是為項(xiàng)目組設(shè)計(jì)的CMM5級(jí)過(guò)程。份SEI技術(shù)報(bào)告中,記錄了使用TSP在滿(mǎn)足成本和進(jìn)度估算的同時(shí)達(dá)到一流質(zhì)量水平的最新</p><p><b> CMM的演變 </b></p><p> 同時(shí),CMM的成功也引發(fā)了相似模型的開(kāi)發(fā)以覆蓋系統(tǒng)工程(SE-CMM)、集成產(chǎn)
50、品開(kāi)發(fā)CMM)、軟件采購(gòu)(SA-CMM)以及人力資源(P-CMM)。為了緩解模型數(shù)量的過(guò)快增長(zhǎng),使用從未正式發(fā)布的CMM第二版、系統(tǒng)工程 CMM和IPD-CMM開(kāi)發(fā)了能力成熟度模型集成(CMMI), </p><p> 第3章系統(tǒng)分析與設(shè)計(jì)</p><p> 3.1 用戶(hù)需求的獲取</p><p> 接到畢設(shè)任務(wù)書(shū)后,通過(guò)在網(wǎng)上查閱了解了一些鐘表銷(xiāo)售相關(guān)的平臺(tái)
51、,進(jìn)行需求提煉總結(jié),形成了用戶(hù)需求分析的相關(guān)文檔,也通過(guò)在圖書(shū)館查閱相關(guān)研究資料完善了需求分析。</p><p> 3.2 系統(tǒng)用戶(hù)分析</p><p><b> 。</b></p><p> 3.3 系統(tǒng)功能分析</p><p> 隨著軟件工程知識(shí)的普及,軟件工程師都知道,要開(kāi)發(fā)高質(zhì)量的軟件,必須改進(jìn)軟件生產(chǎn)的
52、過(guò)程。目前,業(yè)界公認(rèn)由CMU/SEI開(kāi)發(fā)的軟件能力成熟度模型SW-CMM是當(dāng)前最好的軟件過(guò)程,并且CMM已經(jīng)成為事實(shí)上的軟件過(guò)程工業(yè)標(biāo)準(zhǔn)。但是,CMM雖然提供了一個(gè)有力的軟件過(guò)程改進(jìn)框架,卻只告訴我們"應(yīng)該做什么",而沒(méi)有告訴我們"應(yīng)該怎樣做",并未提供有關(guān)實(shí)現(xiàn)關(guān)鍵過(guò)程域所需要的具體知識(shí)和技能。為了彌補(bǔ)這個(gè)欠缺,Humphrey又主持開(kāi)發(fā)了個(gè)體軟件過(guò)程(Personal Software Proc
53、ess,PSP)。 在CMM1.1版本的18個(gè)關(guān)鍵過(guò)程域中有12個(gè)與PSP有關(guān),據(jù)統(tǒng)計(jì),軟件項(xiàng)目 開(kāi)發(fā)成本的70%取決于軟件開(kāi)發(fā)人員個(gè)人的技能、經(jīng)驗(yàn)和工作習(xí)慣。因此,一個(gè)單位的軟件開(kāi)發(fā)人員如能接受PSP培訓(xùn),對(duì)該單位軟件能力成熟度的升級(jí)是一個(gè)有力的保證。CMM側(cè)重于軟件企業(yè)中有關(guān)軟件過(guò)程的宏觀(guān)管理,面向軟件開(kāi)發(fā)單位,PSP則側(cè)重于企業(yè)中有關(guān)軟件過(guò)程的微觀(guān)優(yōu)化,面向軟件開(kāi)發(fā)人員。二者互相支持,互相補(bǔ)充,缺一不可。按照PSP規(guī)程,改進(jìn)軟件過(guò)
54、程的步驟首先需要明確質(zhì)量目標(biāo),也就是軟件將要在功能和性能上滿(mǎn)足的要求和用戶(hù)潛在的</p><p> 3.4數(shù)據(jù)庫(kù)分析與設(shè)計(jì)</p><p> 根據(jù)對(duì)普通注冊(cè)用戶(hù)和系統(tǒng)管理員用戶(hù)的分析,系統(tǒng)可以涉及到5大實(shí)體,分別是社區(qū)信息、用戶(hù)信息、物品信息、留言信息以及評(píng)價(jià)信息。</p><p> 社區(qū)信息是指用戶(hù)所在社區(qū)的具體信息,其應(yīng)包含的屬性有社區(qū)標(biāo)識(shí)、社區(qū)名稱(chēng)、社區(qū)
55、地址以及社區(qū)介紹等。這樣用戶(hù)在注冊(cè)的時(shí)候可以選擇查看社區(qū)信息,以便了解自己應(yīng)該注冊(cè)在哪個(gè)社區(qū)從而更快捷方便的進(jìn)行舊貨交換活動(dòng)。其他用戶(hù)在搜索物品時(shí)也可以查看發(fā)布人所在的社區(qū)信息,以便決定自己要不要拿自己的東西去進(jìn)行交換或者給對(duì)方留言。</p><p> 3.5 系統(tǒng)詳細(xì)設(shè)計(jì)</p><p> 主要介紹了鐘表銷(xiāo)售管理系統(tǒng)的原型設(shè)計(jì)及重要模塊的詳細(xì)設(shè)計(jì)實(shí)現(xiàn)過(guò)程,用一系列的時(shí)序圖輔助文字圖表
56、等進(jìn)行說(shuō)明。</p><p> 3.5.1 系統(tǒng)頁(yè)面設(shè)計(jì)</p><p> 通過(guò)對(duì)舊貨交換信息平臺(tái)系統(tǒng)的分析,本系統(tǒng)的主要使用用戶(hù)有兩種,一是注冊(cè)的普通用戶(hù),是系統(tǒng)主要的服務(wù)對(duì)象,二是系統(tǒng)管理員,負(fù)責(zé)系統(tǒng)日常信息的維護(hù),因而系統(tǒng)原型設(shè)計(jì)可根據(jù)兩種用戶(hù)角色劃分為不同功能的模塊設(shè)計(jì),分別是公共模塊、普通用戶(hù)模塊和系統(tǒng)管理員模塊。</p><p><b>
57、 公共模塊設(shè)計(jì)</b></p><p> 公共模塊包含了注冊(cè)登錄、查看修改個(gè)人信息、修改密碼、查看日歷,物品檢索,友情鏈接、建議投訴等子功能模塊。公共模塊作為系統(tǒng)的前臺(tái)頁(yè)面顯示,需要靈活的易用性和美觀(guān)性,當(dāng)用戶(hù)登錄系統(tǒng)后在左側(cè)的導(dǎo)航欄中也會(huì)顯示這些信息,和其他系統(tǒng)類(lèi)似,在需要增加一些鏈接的地方也加入了公共模塊的很多信息。</p><p> 公共模塊功能層次圖設(shè)計(jì)如下圖3-1
58、0所示,</p><p> 第4章 系統(tǒng)實(shí)現(xiàn)與測(cè)試</p><p> 4.1 重要模塊說(shuō)明</p><p> 普通用戶(hù)發(fā)布物品流程圖圖下圖4-1所示</p><p> 圖4-1 用戶(hù)發(fā)布物品流程圖</p><p> 普通用戶(hù)點(diǎn)擊發(fā)布物品鏈接即可進(jìn)入發(fā)布物品的頁(yè)面,頁(yè)面有相關(guān)輸入框和下拉框來(lái)提示用戶(hù)進(jìn)行操作。
59、輸入用戶(hù)參數(shù)后將通過(guò)http協(xié)議傳遞給GoodsManageAcion中的addGoods()方法,首先根據(jù)登錄id通過(guò)SysUserDao查詢(xún)用戶(hù)信息,檢查在數(shù)據(jù)庫(kù)中是否存在,若查詢(xún)成功,返回該user對(duì)象。并封裝成user屬性,以便將該對(duì)象輸入到Goods對(duì)象中。addGoods()方法會(huì)通過(guò)GoodsService類(lèi)調(diào)用GoodsDao中的save()方法,即將該記錄添加到數(shù)據(jù)庫(kù)表中進(jìn)行保存,其他用戶(hù)就可以對(duì)該物品進(jìn)行搜索或查看。
60、</p><p> 物品配價(jià)功能分為兩種,一種是全社區(qū)配價(jià),一種是本社區(qū)配價(jià),實(shí)現(xiàn)方式是先以?xún)r(jià)格和確定的配價(jià)范圍調(diào)用GoodsDao的findBySamePrice()方法查找數(shù)據(jù)庫(kù)中價(jià)格類(lèi)似的物品,并返回一個(gè)Goods類(lèi)型的list對(duì)象,得到該list對(duì)象后,才根據(jù)用戶(hù)的選擇過(guò)濾出物品所屬用戶(hù)與登錄用戶(hù)不在一個(gè)社區(qū)和過(guò)濾出自己發(fā)布的物品作為本社區(qū)配價(jià)結(jié)果,而全社區(qū)配價(jià)結(jié)果是僅僅將自己發(fā)布的物品過(guò)濾出去,再通過(guò)
61、實(shí)例化GoodsService將該值傳遞給GoodsManageAction類(lèi),該類(lèi)將list對(duì)象封裝成http協(xié)議傳遞到前臺(tái)頁(yè)面進(jìn)行顯示。</p><p><b> 結(jié)論</b></p><p> 本次畢業(yè)設(shè)計(jì)的完成,使我在專(zhuān)業(yè)技能方面得到了大幅度的提升,對(duì)Eclipse平臺(tái)下利用SSH框架技術(shù)進(jìn)行系統(tǒng)開(kāi)發(fā)有了更進(jìn)一步的理解。對(duì)MVC架構(gòu)的運(yùn)行原理也有了更深刻的
62、認(rèn)識(shí)。</p><p> 系統(tǒng)采用SSH框架設(shè)計(jì),典型的J2EE三層結(jié)構(gòu),分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和數(shù)據(jù)服務(wù)層。三層體系將業(yè)務(wù)規(guī)則、數(shù)據(jù)訪(fǎng)問(wèn)及合法性校驗(yàn)等工作放在中間層處理??蛻?hù)端不直接與數(shù)據(jù)庫(kù)交互,而是通過(guò)組件與中間層建立連接,再由中間層與數(shù)據(jù)庫(kù)交互。表現(xiàn)層是傳統(tǒng)的JSP技術(shù),其優(yōu)點(diǎn)在于廣泛的應(yīng)用和穩(wěn)定的表現(xiàn)。中間層采用的是流行的Spring+Hibernate,為了將控制層與業(yè)務(wù)邏輯層分離,又細(xì)分為
63、以下幾種。 </p><p> Web層,就是MVC模式里面的“C”(controller),負(fù)責(zé)控制業(yè)務(wù)邏輯層與表現(xiàn)層的交互,調(diào)用業(yè)務(wù)邏輯層,并將業(yè)務(wù)數(shù)據(jù)返回給表現(xiàn)層作組織表現(xiàn),該系統(tǒng)的MVC框架采用Struts。 Service層(就是業(yè)務(wù)邏輯層),負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯。業(yè)務(wù)邏輯層以DAO層為基礎(chǔ),通過(guò)對(duì)DAO組件的正面模式包裝,完成系統(tǒng)所要求的業(yè)務(wù)邏輯。 DAO層,負(fù)責(zé)與持久化對(duì)象交互。該層封裝了數(shù)據(jù)的增、刪
64、、查、改的操作。 PO,持久化對(duì)象。通過(guò)實(shí)體關(guān)系映射工具將關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)映射成對(duì)象,很方便地實(shí)現(xiàn)以面向?qū)ο蠓绞讲僮鲾?shù)據(jù)庫(kù),該系統(tǒng)采用Hibernate作為ORM框架。 Spring的作用貫穿了整個(gè)中間層,將Web層、Service層、DAO層及PO無(wú)縫整合,其數(shù)據(jù)服務(wù)層用來(lái)存放數(shù)據(jù)。 </p><p> 采用Hibernate作為持久層技術(shù)的最大的好處在于:可以完全以面向?qū)ο蟮姆绞竭M(jìn)行系統(tǒng)分析、系統(tǒng)設(shè)計(jì)。
65、DAO模式需要為每個(gè)DAO組件編寫(xiě)DAO接口,同時(shí)至少提供一個(gè)實(shí)現(xiàn)類(lèi),根據(jù)不同需要,可能有多個(gè)實(shí)現(xiàn)類(lèi)。用Spring容器代替DAO工廠(chǎng) 。通常情況下,引入接口就不可避免需要引入工廠(chǎng)來(lái)負(fù)責(zé)DAO組件的生成。Spring實(shí)現(xiàn)了兩種基本模式:?jiǎn)螒B(tài)模式和工廠(chǎng)模式。而使用Spring可以完全避免使用工廠(chǎng)模式,因?yàn)镾pring就是個(gè)功能非常強(qiáng)大的工廠(chǎng)。因此,完全可以讓Spring充當(dāng)DAO工廠(chǎng)。 由Spring充當(dāng)DAO工廠(chǎng)時(shí),無(wú)須程序員自己實(shí)現(xiàn)工
66、廠(chǎng)模式,只需要將DAO組件配置在Spring容器中,由ApplicationContext負(fù)責(zé)管理DAO組件的創(chuàng)建即可。借助于Spring提供的依賴(lài)注入,其他組件甚至不用訪(fǎng)問(wèn)工廠(chǎng),一樣可以直接使用DAO實(shí)例。 Struts跟Tomcat、Turbine等諸多Apache項(xiàng)目一樣,是開(kāi)源軟件,這是它的一大優(yōu)點(diǎn)。使開(kāi)發(fā)者能更深入的了解其內(nèi)部實(shí)現(xiàn)機(jī)制。 除此之外,Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個(gè)方面:Taglib和頁(yè)面導(dǎo)航。Taglib是
67、Struts的標(biāo)記</p><p> 本次畢業(yè)設(shè)計(jì)是自己第一次獨(dú)立承擔(dān)一個(gè)系統(tǒng)的開(kāi)發(fā)任務(wù),從前期的需求分析到數(shù)據(jù)庫(kù)設(shè)計(jì)再到編碼實(shí)現(xiàn),都是自己全程參與和設(shè)計(jì),這對(duì)自己的挑戰(zhàn)還是很大的。從設(shè)計(jì)到實(shí)現(xiàn)的過(guò)程,使我認(rèn)識(shí)到前期的設(shè)計(jì)是非常重要的,很多時(shí)候需要花費(fèi)大量的時(shí)間來(lái)做需求分析和功能設(shè)計(jì),這樣在后期編碼的時(shí)候才會(huì)更加的流暢,不至于因?yàn)榍捌谛枨蟛划?dāng)導(dǎo)致編碼進(jìn)度緩慢。當(dāng)然,這個(gè)過(guò)程也使自己學(xué)到了很多SSH技術(shù)的相關(guān)知識(shí)
68、,前期由于很多接口不是很清楚導(dǎo)致編碼一度進(jìn)行不下去。自己所了解和所學(xué)到的僅僅是管窺蠡測(cè)而已,在以后的學(xué)習(xí)工作中應(yīng)該更加努力的去學(xué)習(xí)這方面的相關(guān)知識(shí),增加實(shí)踐次數(shù),才能慢慢深入到JAVA軟件開(kāi)發(fā)中。</p><p><b> 致謝</b></p><p> 首先要感謝我的母校西南交通大學(xué),給我們提供了非常優(yōu)秀的師資力量和優(yōu)良的學(xué)習(xí)環(huán)境,使我們能夠安心學(xué)習(xí)科學(xué)文化知識(shí)
69、,提升自己適應(yīng)社會(huì)的能力。為以后更好地為社會(huì)為民眾做出貢獻(xiàn)打下了堅(jiān)實(shí)的基礎(chǔ)。</p><p> 本次畢業(yè)設(shè)計(jì)的完成以及畢業(yè)論文的撰寫(xiě),我非常感謝我的導(dǎo)師,任挺老師。由于在年初就去了公司實(shí)習(xí),而且整個(gè)實(shí)習(xí)的周期很長(zhǎng),強(qiáng)度也很大,幾乎所有的畢設(shè)工作都是在周末完成的。這樣的情況導(dǎo)致自己跟任老師見(jiàn)面的機(jī)會(huì)非常的少,只能通過(guò)郵件和QQ留言的方式和導(dǎo)師進(jìn)行溝通。感謝導(dǎo)師理解自己這方面的苦衷。在系統(tǒng)設(shè)計(jì)編碼階段,非常感謝導(dǎo)師
70、在系統(tǒng)功能需求方面對(duì)我的指導(dǎo),使得后續(xù)的編碼開(kāi)發(fā)過(guò)程減少了很多困難,在實(shí)際開(kāi)發(fā)過(guò)程中也遇到了很多技術(shù)上的困難,經(jīng)過(guò)導(dǎo)師的指導(dǎo)也是一一得到解決。在論文的撰寫(xiě)過(guò)程中,任老師更是細(xì)心審閱,給了自己很多有建設(shè)性的意見(jiàn)。</p><p> 還要感謝在完成畢業(yè)設(shè)計(jì)過(guò)程中幫助過(guò)我的同學(xué),因?yàn)椴荒芙?jīng)?;貙W(xué)校,所以好多事情他們的幫助下才能完成,由于自己對(duì)于界面設(shè)計(jì)不甚擅長(zhǎng),是得到了同學(xué)的無(wú)私幫助才能順利設(shè)計(jì)出前臺(tái)頁(yè)面的樣式。 &
71、lt;/p><p> 最后要感謝我的父母,是他們給了我最大的精神支持,因?yàn)槭浅醮尾饺肷鐣?huì)參加工作,加上要很好的完成畢業(yè)設(shè)計(jì),思想上還是比較有壓力。是他們給了我努力下去的動(dòng)力。</p><p><b> 參考文獻(xiàn)</b></p><p> Bruce Eckel著,陳昊鵬 譯 Thinking in Java第四版 機(jī)械工業(yè)出版社 2007
72、年6月</p><p> 孫鑫, JAVA WEB 開(kāi)發(fā)詳解 電子工業(yè)出版社 2006年4月</p><p> Craig Walls Ryan Breidenbach著,畢慶紅、王軍 等譯 </p><p> Spring in Action第二版 2008年10月</p><p> 劉雨,姚弘芹,趙秀珍. 科技期刊編
73、輯模式現(xiàn)代化實(shí)踐的探討[J]. 北京理工大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版). 2005年06期</p><p> 王國(guó)輝. Java Web開(kāi)發(fā)典型模塊大全. 人民郵電出版社. 2009年4月</p><p> 劉斌. 精通Java Web整合開(kāi)發(fā). 電子工業(yè)出版社. 2007年11月</p><p> 劉京華. Java Web整合開(kāi)發(fā)王者歸來(lái). 清華大學(xué)出版社. 2
74、010年1月</p><p> 梁立新.項(xiàng)目實(shí)踐精解:基于Struts-Spring-Hibernate的Java應(yīng)用開(kāi)發(fā).電子工業(yè)出版社.2008年7月</p><p> 邢素萍.Java辦公自動(dòng)化項(xiàng)目方案精解.航空工業(yè)出版社.2009年9月</p><p> 廖義奎.Java Web開(kāi)發(fā)之Struts編程基礎(chǔ)與實(shí)例精講.中國(guó)電力出版社.2006年1月<
75、;/p><p> 柯自聰.Ajax開(kāi)發(fā)精要:概念、案例與框架.電子工業(yè)出版社.2006年5月</p><p> 康博.XML編程技術(shù)大全.清華大學(xué)出版社.2002年1月</p><p> 劉斌. 精通Java Web整合開(kāi)發(fā). 電子工業(yè)出版社. 2007年11月</p><p> 馮曼菲.EJB JPA數(shù)據(jù)庫(kù)持久層開(kāi)發(fā)實(shí)踐詳解.電子工業(yè)出
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于-.net的psp系統(tǒng)的軟件設(shè)計(jì)和實(shí)現(xiàn)-論文
- 基于vb.net的email發(fā)送軟件設(shè)計(jì)【畢業(yè)論文】
- 基于aforge.net的圖像處理軟件設(shè)計(jì)---畢業(yè)論文
- 基于aforge.net的圖像處理軟件設(shè)計(jì)---畢業(yè)論文
- 基于cygwin-devkitpsp的psp閱讀軟件設(shè)計(jì)與實(shí)現(xiàn)
- 考勤系統(tǒng)軟件設(shè)計(jì) 畢業(yè)論文
- 軟件設(shè)計(jì)專(zhuān)業(yè)畢業(yè)論文
- 畢業(yè)論文-智能轉(zhuǎn)速測(cè)量系統(tǒng)的軟件設(shè)計(jì)
- 基于bs的qq聊天軟件設(shè)計(jì)畢業(yè)論文
- 基于bs的qq聊天軟件設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文--基于java的即時(shí)通信軟件設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文--基于java的即時(shí)通信軟件設(shè)計(jì)與實(shí)現(xiàn)
- 基于.net平臺(tái)的輔助建站軟件設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文--掃雷游戲軟件設(shè)計(jì)與實(shí)現(xiàn)
- 基于matlab的圖像處理軟件設(shè)計(jì)畢業(yè)論文
- 基于java的遠(yuǎn)程控制軟件設(shè)計(jì)【畢業(yè)論文】
- 畢業(yè)論文范文——基于android的背單詞軟件設(shè)計(jì)與實(shí)現(xiàn)
- 基于ebridge的sdh環(huán)形組網(wǎng)軟件設(shè)計(jì)【畢業(yè)論文】
- 真空系統(tǒng)抽氣特性計(jì)算軟件設(shè)計(jì)-畢業(yè)論文
- 基于c#的即時(shí)通訊軟件設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論