版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> www.bycxlw.com 企鵝畢業(yè)設(shè)計網(wǎng)</p><p><b> 目 錄</b></p><p><b> 摘 要3</b></p><p> Abstract4</p><p><b> 第一章 緒論5</b></p>
2、;<p> 1.1 課題背景5</p><p> 1.2 技術(shù)要求6</p><p> 第二章相關(guān)技術(shù)介紹8</p><p> 2.1 B/S體系結(jié)構(gòu)8</p><p> 2.2 SQL Server 20009</p><p> 2.3 JSP技術(shù)9</p>&l
3、t;p> 2.4 ODBC數(shù)據(jù)訪問接口10</p><p> 2.5 JDBC數(shù)據(jù)訪問接口11</p><p> 2.6 JavaScript11</p><p> 第三章 概要設(shè)計13</p><p> 3.1 總體設(shè)計的目的13</p><p> 3.2 系統(tǒng)總體流程圖13</
4、p><p> 3.3 功能模塊圖14</p><p> 3.4 用戶功能模塊圖15</p><p> 第四章 系統(tǒng)設(shè)計17</p><p> 4.1 設(shè)計目標(biāo)17</p><p> 4.2 開發(fā)及運行環(huán)境17</p><p> 4.3 數(shù)據(jù)庫設(shè)計18</p>
5、<p> 第五章 網(wǎng)站總體架構(gòu)25</p><p> 5.1 系統(tǒng)架構(gòu)設(shè)計25</p><p> 5.2 網(wǎng)站首頁的運行結(jié)果25</p><p> 5.3 類的分布26</p><p> 第六章 基礎(chǔ)信息維護(hù)模塊設(shè)計27</p><p> 6.1 工具層的實現(xiàn)27</p>
6、;<p> 6.1.1 Chinese.java類(字符級轉(zhuǎn)換的類)27</p><p> 6.1.2 sqlCode.properties文件(sql語句的存放位置)27</p><p> 6.1.3 SQLCode.java類(通過這個類解析properties文件中的sql語句)28</p><p> 6.1.4 JDBConnct
7、ion.java(這是個JDBC的類,用于加載數(shù)據(jù)庫)28</p><p> 6.2 樣式層的實現(xiàn)31</p><p> 6.3 持久層的實現(xiàn)31</p><p> 6.3.1 接口類(以Dao為結(jié)尾的類名)31</p><p> 6.3.2 實現(xiàn)接口類(以DaoImpl為結(jié)尾的類名)32</p><p&
8、gt; 6.4 服務(wù)層的實現(xiàn)34</p><p> 6.4.1 接口類(以Facade為結(jié)尾的類名)34</p><p> 6.4.2 實現(xiàn)接口類(以FacadeImpl為結(jié)尾的類名)34</p><p> 6.5 企業(yè)類型設(shè)置控制層的實現(xiàn)35</p><p> 6.5.1 添加操作35</p><p&
9、gt; 6.5.2 修改操作36</p><p> 6.5.3 刪除操作37</p><p> 6.5.4 查詢操作38</p><p><b> 總 結(jié)41</b></p><p><b> 參考文獻(xiàn)42</b></p><p><b>
10、致 謝43</b></p><p><b> 摘 要</b></p><p> 軟件項目管理系統(tǒng)是為了使企業(yè)項目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對人員、產(chǎn)品、過程和項目進(jìn)行分析和管理的活動,系統(tǒng)包括項目基本信息管理、軟件模塊管理和軟件缺陷管理等功能。</p><p> 本系統(tǒng)必須在增加基本信息之后才能增加企業(yè)項
11、目信息?;拘畔椖款愋托畔?、項目狀態(tài)信息、模塊狀態(tài)信息和模塊缺陷信息等。后臺數(shù)據(jù)庫采用SQL2000,前臺開發(fā)工具采用JSP技術(shù),JAVA語言。</p><p> 本系統(tǒng)采用比較流行的ADO 數(shù)據(jù)訪問技術(shù),并將每個數(shù)據(jù)庫表的字段和操作封裝到類中,從而成功的將面向?qū)ο蟮某绦蛟O(shè)計思想應(yīng)用到系統(tǒng)設(shè)計中。這也是本系統(tǒng)的特色和優(yōu)勢。</p><p> 軟件項目管理系統(tǒng)將以需求為管理核心,任
12、務(wù)為管理內(nèi)容,質(zhì)量為管理指標(biāo)實現(xiàn)項目過程的管理。項目從需求建立為開始,由任務(wù)來跟蹤需求完成的進(jìn)度,用質(zhì)量管理來考核需求完成的標(biāo)準(zhǔn),系統(tǒng)可實現(xiàn)需求到任務(wù),任務(wù)到質(zhì)量的完整管理,以追溯管理的方式實現(xiàn)項目過程的完整管理。</p><p> 關(guān)鍵詞:企業(yè)項目管理系統(tǒng); SQL2000數(shù)據(jù)庫; JSP</p><p><b> Abstract</b></p>
13、<p> The software item management system is for can make the business enterprise item completed smoothly according to the cost, degree of progress, quantity for schedule to, but carry on the activity of analysis
14、and management to the personnel, product, process and item, the system includes the basic information of item management, the software mold piece manage to manage etc. with the software blemish function.</p><p
15、> This system must then can increase the business enterprise item information after increase basic information.The basic information includes item type information, item appearance information, the mold an appearance
16、 information and a blemish information etc. of molds.The backstage database adoption SQL2000, the stage development tool adoption the JSP technique, language of JAVA.</p><p> This system adoption more pop
17、ular ADO data visits the technique, and pack each word of database form segment and operations seal in the type, thus will face to the program design of the object thought to apply to the system design successfully in.Th
18、is is also the special features and the advantage of this system.</p><p> The software item management system will take need as to manage the core, in order to manage the contents, mission quantity for man
19、age the management that the index sign carries out the item process.The item is from the need establishment for beginning, is followed the degree of progress that the need complete by the mission, use the standard that t
20、he quantity management investigates the need to complete, the system can carry out the need to mission, the mission arrives the complete management </p><p> Key word: The business enterprise item managemen
21、t system; Database of SQL2000; JSP</p><p><b> 第一章 緒論</b></p><p><b> 1.1 課題背景</b></p><p> Internet是目前世界上最大的計算機互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個整體。作為Internet上一種
22、先進(jìn)的,易于被人們所接受的信息檢索手段,World Wide Web(簡稱WWW)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫。據(jù)估計,目前Internet上已有上百萬個Web站點,其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個領(lǐng)域,其用戶群十分龐大,因此,建設(shè)一個好的Web站點對于一個機構(gòu)的發(fā)展十分重要。近年來,隨著網(wǎng)絡(luò)用戶要求的不斷提高及計算機科學(xué)的迅速發(fā)展,特別是數(shù)據(jù)庫技術(shù)在Internet中的廣泛應(yīng)
23、用,Web站點向用戶提供的服務(wù)將越來越豐富,越來越人性化。</p><p> 我們發(fā)現(xiàn)這樣一個事實,一個用戶在訪問一個網(wǎng)站時一般來講只對該網(wǎng)站的部分內(nèi)容感性趣,而且這種興趣會持續(xù)一段時間。這點啟發(fā)了我們,如果能根據(jù)用戶的喜好為不同的用戶顯示其個性化的頁面,即著重顯示該用戶感興趣的內(nèi)容,將為用戶節(jié)約大量的檢索時間,而且這樣的網(wǎng)頁顯然是更具有吸引力的。一些站點已經(jīng)在這方面作出了一定的嘗試,通常采用的方法是,在用戶登
24、陸時為其提供一系列的選項,使用戶能夠?qū)φ军c進(jìn)行一些自主的設(shè)置。這樣做能夠使站點呈現(xiàn)一定程度的個性化,但是對用戶來講,還是比較煩瑣,而且在用戶了解一個站點前讓其對站點進(jìn)行設(shè)置,其結(jié)果未免有些粗糙。于是我們構(gòu)想了這樣一種方案,對用戶登陸后的動作進(jìn)行跟蹤,分析,發(fā)掘用戶點擊的規(guī)律,即用戶先后點擊的關(guān)聯(lián)規(guī)則,這樣,在用戶點擊一個主題(鏈接)之后,系統(tǒng)能夠自動生成一頁面,其中包含了該主題下用戶經(jīng)常關(guān)注的內(nèi)容(若干鏈接),這樣便在無須用戶作出任何額
25、外工作的情況下實現(xiàn)了為用戶量身訂做的個性化頁面。</p><p> 經(jīng)過二十多年的發(fā)展,市場經(jīng)濟(jì)的觀念已經(jīng)深入人心。90年代末,隨著全球經(jīng)濟(jì)一體化和知識經(jīng)濟(jì)的發(fā)展,項目個性化需求特征愈來愈明顯,只有真正了解市場需要,最大滿足項目需求的產(chǎn)品才能實現(xiàn)競爭優(yōu)勢。企業(yè)"以產(chǎn)品為中心"的模式向"以市場為中心","以項目為中心"的模式轉(zhuǎn)移。正確、快速地處理與項目之
26、間的溝通成為企業(yè)利潤的主要源泉。企業(yè)管理的視覺從"內(nèi)視型"向"外視型"轉(zhuǎn)變。企業(yè)轉(zhuǎn)換自己的視角"外向型"地整合內(nèi)外部資源,從而提高企業(yè)的核心競爭力。此時產(chǎn)生了項目管理(Customer Relationship Management,CRM)軟件。</p><p> 要實現(xiàn)這樣的功能,離不開后臺數(shù)據(jù)庫的支持。用戶驗證信息,收集到的用戶點擊信息,主題層次
27、信息,分析得出的關(guān)聯(lián)規(guī)則表等大量的數(shù)據(jù)都由數(shù)據(jù)庫管理系統(tǒng)管理。本文中數(shù)據(jù)庫服務(wù)器端采用了SQL2000數(shù)據(jù)庫作為數(shù)據(jù)源,并以先進(jìn)的ADO(ActiveX Data Objects)技術(shù)進(jìn)行數(shù)據(jù)庫存取等操作,使Web與數(shù)據(jù)庫緊密聯(lián)系起來。</p><p><b> 1.2 技術(shù)要求</b></p><p> 我們已經(jīng)提到,用戶個性化頁面是在用戶登陸后瀏覽網(wǎng)頁的過程中
28、由服務(wù)器即時生成再返回給用戶瀏覽器的,它事先并不存在于服務(wù)器。顯然單純的HTML無法提供這種頁面,必須使用具有運算功能的Web技術(shù)來實現(xiàn)。在比較了現(xiàn)今幾種動態(tài)頁面開發(fā)技術(shù)后,我們選擇了比較成熟和先進(jìn)的WinNT+JSP技術(shù)。它提供了強大的Web Computing功能和數(shù)據(jù)庫操作功能(這將在第3部分詳細(xì)介紹)。</p><p> 在設(shè)計實現(xiàn)過程當(dāng)中,還遇到一些特殊的技術(shù)困難,如何處理它們直接影響到生成頁面的質(zhì)量
29、和服務(wù)器端的效率?,F(xiàn)將主要的技術(shù)困難及其解決思路介紹如下:</p><p> (1)采集用戶信息。</p><p> 用戶訪問的信息,即用戶在站上的點擊行為,是我們生成用戶個性化頁面的根據(jù)。如何在不影響用戶瀏覽的情況下記錄下用戶的每一點擊呢,這里,我們使生成頁面上的每一鏈點都鏈接到一個名為Record.asp的功能頁面,并將該鏈點名稱(亦即主題名,Topicname)作為參數(shù)傳遞,Re
30、cord.asp只對該Topicname進(jìn)行記錄而不返回給用戶瀏覽器任何內(nèi)容,隨即指向生成頁面的程序,并同時傳遞Topicname。第4部分將對此過程進(jìn)行詳細(xì)的敘述。</p><p><b> (2)鏈接數(shù)據(jù)庫。</b></p><p> 各功能模塊中需要頻繁的進(jìn)行數(shù)據(jù)庫操作,如果每遇到要使用數(shù)據(jù)庫便建立一次鏈接將在一定程度上增大系統(tǒng)開銷,我們這里有效利用了JSP
31、的文件,使服務(wù)器事先建立數(shù)據(jù)庫鏈接對象,所有的數(shù)據(jù)操作都使用該鏈接,從而提高了服務(wù)器效率。具體做法請參閱第3部分內(nèi)容。</p><p> (3)可變的SQL語句</p><p> 一個訪問數(shù)據(jù)庫的程序段,對于不同的用戶以及一個用戶的不同行為,要其執(zhí)行的SQL語句是不同的,其不同主要表現(xiàn)在查詢、插入或更新時的參數(shù)不同,于是我們將SQL語句定義為含變量的字符串,通過賦予變量不同的值便產(chǎn)生出
32、適合的SQL語句串,再通過數(shù)據(jù)對象的相應(yīng)方法來執(zhí)行它,完成所需的數(shù)據(jù)操作。這一方法的運用。</p><p> (4)對關(guān)聯(lián)規(guī)則表進(jìn)行解析</p><p> 前面已提到,個性化頁面的生成是基于用戶關(guān)聯(lián)規(guī)則表的,而該表的關(guān)聯(lián)規(guī)則字段長度不一,項目個數(shù)也不定,必須找到一種有效的算法對其進(jìn)行解析,分離出相關(guān)的Topicname。這里,我們對關(guān)聯(lián)規(guī)則的形式進(jìn)行分析,組合使用腳本語言中各種字串處理
33、函數(shù),設(shè)計出高效的分解算法。</p><p> (5)尋求合理的支持度閥值和置信度閥值</p><p> 關(guān)聯(lián)規(guī)則表的生成受支持度閥值minSup和置信度閾值minConf 的控制,它們的取值是否合理將直接影響到生成頁面的理想程度。</p><p><b> 相關(guān)技術(shù)介紹</b></p><p> 2.1 B/S
34、體系結(jié)構(gòu)</p><p> 在B/S體系結(jié)構(gòu)系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡(luò)上的許多服務(wù)器發(fā)出請求,服務(wù)器對瀏覽器的請求進(jìn)行處理,將用戶所需信息返回到瀏覽器。B/S結(jié)構(gòu)簡化了用戶機的工作,用戶機上只需配置少量的項目端軟件。服務(wù)器將擔(dān)負(fù)更多的工作,對數(shù)據(jù)庫的訪問和應(yīng)用程序的執(zhí)行將在服務(wù)器上完成。瀏覽器發(fā)出請求,而其余如數(shù)據(jù)請求、加工、結(jié)果返回以及動態(tài)網(wǎng)頁生成等工作全部由Web Server完成。實際上B/S體系
35、結(jié)構(gòu)是把二層C/S結(jié)構(gòu)的事務(wù)處理邏輯模塊從項目機的任務(wù)中分離出來,由Web服務(wù)器單獨組成一層來負(fù)擔(dān)其任務(wù),這樣用戶機的壓力減輕了,把負(fù)荷分配給了Web服務(wù)器。這種三層體系結(jié)構(gòu)如圖2-1所示。</p><p> 圖2-1 三層體系結(jié)構(gòu)</p><p> 采用該結(jié)構(gòu)軟件的優(yōu)勢在于:</p><p> (1)無須開發(fā)用戶端軟件,維護(hù)和升級方便;</p>
36、<p> (2)可跨平臺操作,任何一臺機器只要裝有WWW瀏覽器軟件,均可作為項目機來訪問系統(tǒng);</p><p> (3)具有良好的開放性和可擴充性;</p><p> (4)可采用防火墻技術(shù)來保證系統(tǒng)的安全性,有效地適應(yīng)了當(dāng)前用戶對管理信息系統(tǒng)的新需求。</p><p> 這種三層結(jié)構(gòu)層與層之間相互獨立,任何一層的改變不影響其他層的功能。<
37、/p><p> 三層B/S結(jié)構(gòu)將應(yīng)用的三個部分明確的分開:表示部分、應(yīng)用邏輯部分、數(shù)據(jù)訪問部分。這三個部分在邏輯上獨立的分開,分別加以實現(xiàn),稱之為:項目端、應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器。而在項目端和應(yīng)用服務(wù)器之間加入一個WEB服務(wù)器,就形成了一種特殊的B/S結(jié)構(gòu):Browser/Server,只在項目端安裝瀏覽器軟件即可。項目端使用Internet Explore時,就可以讓Internet Explore變成為能夠處
38、理數(shù)據(jù)的應(yīng)用系統(tǒng)。</p><p> 由于這種模式是提供一個跨平臺的、簡單一致的應(yīng)用環(huán)境,實現(xiàn)了開發(fā)系統(tǒng)與應(yīng)用系統(tǒng)的分離,因此避免了為多重不同的操作系統(tǒng)開發(fā)同一應(yīng)用系統(tǒng)的重復(fù)操作,便于用戶群的擴展、變化以及應(yīng)用系統(tǒng)的管理。</p><p> 因此該結(jié)構(gòu)在管理信息系統(tǒng)開發(fā)領(lǐng)域中獲得飛速發(fā)展,成為應(yīng)用軟件開發(fā)中一種流行的體系結(jié)構(gòu).所以在開發(fā)本系統(tǒng)時采用這種模式。</p>&l
39、t;p> 2.2 SQL Server 2000 </p><p> SQL Server 2000具有較好的可伸縮性和可靠性,提供了以Web標(biāo)準(zhǔn)為基礎(chǔ)的擴展數(shù)據(jù)庫編程功能,可以滿足電子商務(wù)和企業(yè)應(yīng)用程序的要求。SQL Server 2000支持XML和Internet標(biāo)準(zhǔn),具有基于Web的分析能力,允許使用內(nèi)置的存儲過程以XML格式存儲、更新、刪除、檢索數(shù)據(jù)。</p><p>
40、 SQL Server 2000能提供超大型系統(tǒng)所需的數(shù)據(jù)庫服務(wù)。大型服務(wù)器可能有成千上萬的用戶同時連接到SQL Server 2000的情況,SQL Server 2000為這些環(huán)境提供了全面的保護(hù),具有防止問題發(fā)生的安全措施,例如,可以防止多個用戶試圖同時更新相同的數(shù)據(jù)。SQL Server 2000還在多個用戶之間有效地分配可用資源,比如內(nèi)存、網(wǎng)絡(luò)帶寬和磁盤I/O等。</p><p> SQL Serv
41、er 2000不僅能作為一個功能強大的數(shù)據(jù)庫服務(wù)器有效地工作,而且數(shù)據(jù)庫引擎也用在需要在項目端本地存儲獨立數(shù)據(jù)庫的應(yīng)用程序中。SQL Server 2000可以動態(tài)地將自身配置成能有效地使用項目端桌面或膝上型電腦中的可用資源,而不需要為每個項目端專設(shè)一個數(shù)據(jù)庫管理員。應(yīng)用程序供應(yīng)商還可以將SQL Server 2000作為應(yīng)用程序的數(shù)據(jù)存儲組件嵌入到應(yīng)用程序中。SQL Server在網(wǎng)絡(luò)組件的頂部添加了服務(wù)器特有的中介組件,諸如開放式數(shù)
42、據(jù)庫連接(ODBC)后能使不同項目機進(jìn)行相互連接,它可處理基于Internet的應(yīng)用程序,幫助用戶把SQL Server數(shù)據(jù)庫信息集成到Web頁面。</p><p><b> 2.3 JSP技術(shù)</b></p><p> JSP(Java Server Pages)是Sun公司推出的一種動態(tài)網(wǎng)頁技術(shù)。JSP技術(shù)是以Java語言作為腳本語言的。作為采用Java技術(shù)家
43、族的一部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。</p><p> JSP通過以下幾個方面加以實現(xiàn)的:</p><p> 1、簡便性和有效性:JSP動態(tài)網(wǎng)頁的編寫與一般的靜態(tài)HTML的網(wǎng)頁的編寫是十分相似的。只是在原來的HTML網(wǎng)頁中加入一些JSP專有的標(biāo)簽,或是一些腳本程序。這樣,熟悉HTML網(wǎng)頁編寫的設(shè)計人員可以很容易進(jìn)行JSP網(wǎng)頁的開發(fā)。而且開發(fā)人員完全可以不親自編寫腳
44、本程序,而只是通過JSP獨有的標(biāo)簽利用別人已寫好的部件來實現(xiàn)動態(tài)網(wǎng)頁的編寫。這樣,不熟悉腳本語言的網(wǎng)頁開發(fā)者,完全可以利用JSP做出漂亮的動態(tài)網(wǎng)頁。這在其他的動態(tài)網(wǎng)頁開發(fā)中是不可思議的。</p><p> 2、程序的獨立性:JSP是Java API家族的一部分,它擁有一般的Java程序的跨平臺的特性,換句話說,就是擁有程序的對平臺的獨立性。即:Write once, Run anywhere!</p>
45、;<p> 3、程序的兼容性:因為 JSP中的動態(tài)內(nèi)容可以各種形式進(jìn)行顯示,所以它可以為各種項目提供服務(wù):從使用HTML/DHTML的瀏覽器,到使用WML的各種手提無線設(shè)備(如移動電話和個人數(shù)字設(shè)備PDA),再到使用XML的B2B應(yīng)用,都可以使用JSP的動態(tài)頁面。</p><p> 4、程序的可重用性:在 JSP頁面中可以不直接將腳本程序嵌入,而只是將動態(tài)的交互部分作為一個部件加以引用。這樣,一
46、旦這樣的一個部件寫好,它可以為多個程序重復(fù)引用,實現(xiàn)了程序的可重用性?,F(xiàn)在,大量的標(biāo)準(zhǔn)JavaBeans程序庫就是一個很好的例證。</p><p> JSP語言的優(yōu)點不言而喻,它對于用戶界面的更新,其實就是由Web Server進(jìn)行的,給人的感覺更新很快;所有的應(yīng)用都是基于服務(wù)器的,所以它們可以時刻保持最新版本;項目端的接口不是很繁瑣,對于各種應(yīng)用易于部署、維護(hù)和修改。因此,本系統(tǒng)采用JSP語言開發(fā)。</
47、p><p> 2.4 ODBC數(shù)據(jù)訪問接口</p><p> 開放數(shù)據(jù)庫互連(Open Database Connectivity,ODBC)是Microsoft公司開發(fā)的一套開發(fā)數(shù)據(jù)庫系統(tǒng)應(yīng)用程序接口規(guī)范,它支持應(yīng)用程序以標(biāo)準(zhǔn)的ODBC函數(shù)和SQL語句操作各種不同的數(shù)據(jù)庫。在這一實現(xiàn)過程中,ODBC驅(qū)動程序起了關(guān)鍵作用,簡單地說,ODBC驅(qū)動程序相當(dāng)于一個轉(zhuǎn)換開關(guān),它負(fù)責(zé)將應(yīng)用程序發(fā)送來
48、的標(biāo)準(zhǔn)SQL語句傳遞給各種數(shù)據(jù)庫驅(qū)動程序處理,再將處理結(jié)構(gòu)送回使用程序。于是,應(yīng)用程序開發(fā)者只須面對統(tǒng)一的ODBC數(shù)據(jù)源,而不必針對各種數(shù)據(jù)庫進(jìn)行不同的設(shè)置,這樣的程序具備更好的適用性和可移植性,甚至可以訪問多種不同的數(shù)據(jù)庫,如圖2所示。</p><p> 圖2-2 ODBC 工作原理</p><p> 2.5 JDBC數(shù)據(jù)訪問接口</p><p> 為支持J
49、ava程序的數(shù)據(jù)庫操作功能,Java語言采用了專門的Java數(shù)據(jù)庫編程接口(Java Database Connecivity,JDBC),用于在Java程序中實現(xiàn)數(shù)據(jù)庫操作功能并簡化操作過程。JDBC支持基本SQL語句,提供多樣化的數(shù)據(jù)庫連接方式,為各種不同的數(shù)據(jù)庫提供統(tǒng)一的操作界面。</p><p> JDBC工作原理如圖2-3所示。</p><p> 圖2-3 JDBC工作原理&
50、lt;/p><p> 2.6 JavaScript</p><p> JavaScript是一種基于對象(Object)和事件驅(qū)動(Event Driven)并具有安全性能的腳本語言。使用它的目的是與HTML超文本標(biāo)記語言、Java 腳本語言(Java小程序)一起實現(xiàn)在一個Web頁面中鏈接多個對象,與Web項目交互作用。從而可以開發(fā)項目端的應(yīng)用程序等。它是通過嵌入或調(diào)入在標(biāo)準(zhǔn)的HTML語言
51、中實現(xiàn)的。它的出現(xiàn)彌補了HTML語言的缺陷,它是Java與HTML折衷的選擇,具有以下幾個基本特點:</p><p><b> 是一種腳本編寫語言</b></p><p> JavaScript是一種腳本語言,它采用小程序段的方式實現(xiàn)編程。像其它腳本語言一樣,JavaScript同樣已是一種解釋性語言,它提供了一個易的開發(fā)過程。</p><p&
52、gt; 它的基本結(jié)構(gòu)形式與C、C++、VB、Delphi十分類似。但它不像這些語言一樣,需要先編譯,而是在程序運行過程中被逐行地解釋。它與HTML標(biāo)識結(jié)合在一起,從而方便用戶的使用操作。</p><p><b> 基于對象的語言</b></p><p> JavaScript是一種基于對象的語言,同時以可以看作一種面向?qū)ο蟮摹_@意味著它能運用自己已經(jīng)創(chuàng)建的對象。
53、因此,許多功能可以來自于腳本環(huán)境中對象的方法與腳本的相互作用。 </p><p><b> 簡單性</b></p><p> JavaScript的簡單性主要體現(xiàn)在:首先它是一種基于Java基本語句和控制流之上的簡單而緊湊的設(shè)計, 從而對于學(xué)習(xí)Java是一種非常好的過渡。其次它的變量類型是采用弱類型,并未使用嚴(yán)格的數(shù)據(jù)類型。 </p><p&g
54、t;<b> 安全性</b></p><p> JavaScript是一種安全性語言,它不允許訪問本地的硬盤,并不能將數(shù)據(jù)存入到服務(wù)器上,不允許對網(wǎng)絡(luò)文檔進(jìn)行修改和刪除,只能通過瀏覽器實現(xiàn)信息瀏覽或動態(tài)交互。從而有效地防止數(shù)據(jù)的丟失。</p><p> 動態(tài)性 JavaScript是動態(tài)的,它可以直接對用戶或項目輸入做出響應(yīng),無須經(jīng)過Web服務(wù)程序。它對用戶
55、的反映響應(yīng),是采用以事件驅(qū)動的方式進(jìn)行的。所謂事件驅(qū)動,就是指在主頁(Home Page)中執(zhí)行了某種操作所產(chǎn)生的動作,就稱為“事件”(Event)。比如按下鼠標(biāo)、移動窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,可能會引起相應(yīng)的事件響應(yīng)。 </p><p> 綜合所述JavaScript 是一種新的描述語言,它可以被嵌入到 HTML 的文件之中JavaScript語言可以做到回應(yīng)使用者的需求事件 (如: fo
56、rm 的輸入) ,而不用任何的網(wǎng)路來回傳輸資料,所以當(dāng)一位使用者輸入一項資料時,它不用經(jīng)過傳給伺服端 (server)處理,再傳回來的過程,而直接可以被項目端 (client) 的應(yīng)用程式所處理。</p><p><b> 第三章 概要設(shè)計</b></p><p> 3.1 總體設(shè)計的目的</p><p> 軟件項目管理系統(tǒng)的根本目的是
57、為了讓軟件項目尤其是大型項目的整個軟件生命周期(從分析、設(shè)計、編碼到測試、維護(hù)全過程)都能在管理者的控制之下,以預(yù)定成本按期,按質(zhì)的完成軟件交付用戶使用。而研究軟件項目管理為了從已有的成功或失敗的案例中總結(jié)出能夠指導(dǎo)今后開發(fā)的通用原則,方法,同時避免前人的失誤。</p><p> 該體統(tǒng)通過對軟件項目開發(fā)的各個環(huán)節(jié)進(jìn)行設(shè)置(基本信息設(shè)置 項目組管理 軟件項目管理 系統(tǒng)管理),包括基本信息的添加、修改、刪除和查詢
58、;項目組信息的添加、修改、刪除和查詢;軟件項目管理模塊包括項目基本信息管理、軟件模塊管理和軟件缺陷管理等功能。軟件項目管理系統(tǒng)就是實現(xiàn)軟件開發(fā)過程和軟件管理過程的全面管理。</p><p> 3.2 系統(tǒng)總體流程圖</p><p> 對于數(shù)據(jù)庫軟件應(yīng)用的設(shè)計與開發(fā),數(shù)據(jù)庫系統(tǒng)的設(shè)計是其最為核心和基礎(chǔ)的環(huán)節(jié)。數(shù)據(jù)庫系統(tǒng)的優(yōu)劣直接影響到系統(tǒng)的性能,所以對數(shù)據(jù)庫系統(tǒng)的設(shè)計必須有優(yōu)良的性能,那
59、么對它的設(shè)計也更嚴(yán)密周緊。</p><p> 圖3-1 總體流程</p><p><b> 3.3 功能模塊圖</b></p><p> 本系統(tǒng)采用Visual Basic 作為開發(fā)工具,Access 作為后臺數(shù)據(jù)庫,將每個數(shù)據(jù)庫表的字段和操作封裝到類中,從而成功地將面向?qū)ο蟮某绦蛟O(shè)計思想應(yīng)用到數(shù)據(jù)庫應(yīng)用程序設(shè)計中。這也是本系統(tǒng)的特色和
60、優(yōu)勢。</p><p> 本系統(tǒng)包括17個窗體,3個模塊,8個類模塊。3個模塊分別為:Const, DbFunc, Variable。</p><p> Const 用來管理工程中的常量。DbFunc 用來管理工程中與數(shù)據(jù)庫操作相關(guān)的聲明、變量和函數(shù)。</p><p> Variable 用來管理工程中的變量。還有4個功能模塊基本信息管理、項目組管理、軟
61、件項目管理、系統(tǒng)用戶管理。</p><p> 圖3-2 模塊劃分圖</p><p> 3.4 用戶功能模塊圖</p><p> 本系統(tǒng)初始化時,有兩個默認(rèn)的用戶,普通用戶為Users,系統(tǒng)管理員用戶為Admin,手動添加到數(shù)據(jù)庫中,他的確認(rèn)密碼為ad。Admin用戶可以創(chuàng)建用戶、刪除用戶、修改用戶的信息,普通用戶只能修改自己的用戶名和密碼。</p>
62、;<p> 圖3-3 用戶功能模塊圖</p><p><b> 第四章 系統(tǒng)設(shè)計</b></p><p><b> 4.1 設(shè)計目標(biāo)</b></p><p> 本系統(tǒng)是針對中小型企業(yè)項目管理現(xiàn)狀,通過網(wǎng)絡(luò)實現(xiàn)對企業(yè)項目信息的管理,主要實現(xiàn)如下目標(biāo):</p><p> (1)
63、對項目信息(項目基本信息、項目經(jīng)辦人、項目方案等信息)進(jìn)行全面管理。</p><p> (2)對項目合同的管理。</p><p> (3)實現(xiàn)各種信息查詢功能。</p><p> (4)對用戶輸入的數(shù)據(jù),系統(tǒng)進(jìn)行嚴(yán)格的數(shù)據(jù)檢驗,盡可能排除人為的錯誤。</p><p> (5)操作員可以隨時修改自己的口令。</p><
64、;p> (6)數(shù)據(jù)保密性強,為每個用戶設(shè)置相應(yīng)的權(quán)限級別。</p><p> (7)提供輔助工具,方便用戶操作及使用。</p><p> (81)系統(tǒng)運行穩(wěn)定、安全可靠。</p><p> 4.2 開發(fā)及運行環(huán)境</p><p><b> 硬件配置:</b></p><p> C
65、PU:2.26GHZ;</p><p><b> 內(nèi)存:256M;</b></p><p><b> 硬盤:80G;</b></p><p><b> 軟件配置:</b></p><p> 操作系統(tǒng):Windows XP/Windows 2000;</p>
66、<p> 數(shù)據(jù)庫:SQL Server 2000;</p><p> JSP服務(wù)器:Tomcat;</p><p> 開發(fā)工具包:JDK Version1.4.2。</p><p><b> 4.3 數(shù)據(jù)庫設(shè)計</b></p><p> 本系統(tǒng)數(shù)據(jù)庫采用SQL Server 2000數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)
67、庫名稱為db_Client。數(shù)據(jù)庫db_Client中包含18張表。關(guān)于數(shù)據(jù)庫中的數(shù)據(jù)表請參見附錄B</p><p> ?。?)tb_Client_qyxx(區(qū)域表)</p><p> 區(qū)域表主要用來保存所設(shè)置的區(qū)域信息。表tb_Client_qyxx的結(jié)構(gòu)如表5-1所示。</p><p> 表5-1 表tb
68、_Client_qyxx的結(jié)構(gòu)</p><p> ?。?)tb_Client_qyxz(企業(yè)性質(zhì)信息表)</p><p> 企業(yè)性質(zhì)信息表用來保存用戶所設(shè)置的企業(yè)性質(zhì)信息。表tb_Client_qyxz的結(jié)構(gòu)如表5-2所示。</p><p> 表5-2 表tb_Client_qyxz的結(jié)構(gòu)</p&
69、gt;<p> ?。?)tb_Client_qylx(企業(yè)類型信息表)</p><p> 企業(yè)類型信息表用來保存用戶所設(shè)置的項目企業(yè)類型信息。表tb_Client_qylx的結(jié)構(gòu)如表5-3所示。</p><p> 表5-3 表tb_Client_qylx的結(jié)構(gòu)</p><p> ?。?)tb
70、_Client_qyzx(企業(yè)資信信息表)</p><p> 企業(yè)資信信息表主要用來保存項目的企業(yè)資信信息。表tb_Client_qyzx的結(jié)構(gòu)如表5-4所示。</p><p> 表5-4 表tb_Client_qyzx的結(jié)構(gòu)</p><p> (5)tb_Client_Khjb(項目級別表)</
71、p><p> 項目級別表主要用來保存項目的級別信息。表tb_Client_Khjb的結(jié)構(gòu)如表5-5所示。</p><p> 表5-5 表tb_Client_Khjb的結(jié)構(gòu)</p><p> ?。?)tb_Client_khmyd(項目滿意程度表)</p><p> 項目滿意程度表
72、用來保存項目的滿意程度信息。表tb_Client_khmyd的結(jié)構(gòu)如表5-6所示。</p><p> 表5-6 表tb_Client_khmyd的結(jié)構(gòu)</p><p> (7)tb_Client_bank(項目銀行信息表)</p><p> 項目銀行信息表主要用來保存項目的銀行名稱信息。表tb_Client
73、_bank的結(jié)構(gòu)如表5-7所示。</p><p> 表5-7 表tb_Client_bank的結(jié)構(gòu)</p><p> ?。?)tb_khxx(項目信息表)</p><p> 項目信息表用來保存項目的詳細(xì)信息。表tb_khxx的結(jié)構(gòu)如表5-8所示。</p><p> 表5-8
74、 表tb_khxx的結(jié)構(gòu)</p><p> ?。?)tb_Client_khfk(項目反饋信息表)</p><p> 項目反饋信息表用來保存項目的反饋信息。表tb_Client_khfk的結(jié)構(gòu)如表5-9所示。</p><p> 表5-9 表tb_Client_
75、khfk的結(jié)構(gòu)</p><p> ?。?0)tb_Client_csxx(國內(nèi)城市區(qū)號郵編表)</p><p> 國內(nèi)城市區(qū)號郵編表用來保存國內(nèi)各城市的區(qū)號及郵編信息。表tb_Client_csxx的結(jié)構(gòu)如表5-10所示。</p><p> 表5-10 表tb_Client_csxx的結(jié)構(gòu)</p>
76、<p> ?。?1)tb_bdwxx(本單位信息表)</p><p> 本單位信息表用來保存本單位的相關(guān)信息。表tb_bdwxx的結(jié)構(gòu)如表5-11所示。</p><p> 表5-11 表tb_bdwxx的結(jié)構(gòu)</p><p> ?。?2)tb_Client_cpxs(產(chǎn)品銷售表)</p>
77、<p> 產(chǎn)品銷售表用來保存產(chǎn)品銷售信息。表tb_Client_cpxs的結(jié)構(gòu)如表5-12所示。 </p><p> 表5-12 表tb_Client_cpxs的結(jié)構(gòu)</p><p> ?。?3)tb_Client_gzbw(工作備忘表)</p><p> 工作備忘表用來保存工作備忘的相關(guān)信息。表tb
78、_Client_gzbw的結(jié)構(gòu)如表5-13所示。</p><p> 表5-13 表tb_Client_gzbw的結(jié)構(gòu)</p><p> ?。?4)tb_Client_khts(項目投訴表)</p><p> 項目投訴表用來保存項目投訴信息。表tb_Client_khts的結(jié)構(gòu)如表5-14所示。</p>
79、<p> 表5-14 表tb_Client_khts的結(jié)構(gòu)</p><p> ?。?5)tb_Client_lxrxx(聯(lián)系人信息表)</p><p> 聯(lián)系人信息表用來保存聯(lián)系人相關(guān)信息。表tb_Client_lxrxx的結(jié)構(gòu)如表5-15所示。</p><p> 表5-15
80、 表tb_Client_lxrxx的結(jié)構(gòu)</p><p> ?。?6)tb_Client_mydtj(滿意程度表)</p><p> 滿意程度表用來保存滿意程度信息。表tb_Client_mydtj的結(jié)構(gòu)如表5-16所示。</p><p> 表5-16 表tb_Client_mydtj
81、的結(jié)構(gòu)</p><p> ?。?7)tb_Client_sfzy(省份表)</p><p> 省份表用來保存各省份信息。表tb_Client_sfzy的結(jié)構(gòu)如表5-17所示。</p><p> 表5-17 表tb_Client_sfzy的結(jié)構(gòu)</p><p> ?。?8)tb_user(操
82、作用戶表)</p><p> 操作用戶表用來保存操作員信息。表tb_user的結(jié)構(gòu)如表5-18所示。</p><p> 表5-18 表tb_user的結(jié)構(gòu)</p><p> 第五章 網(wǎng)站總體架構(gòu)</p><p> 5.1 系統(tǒng)架構(gòu)設(shè)計</p><p> 在編
83、寫代碼之前,可以先把網(wǎng)站中可能用到的文件夾創(chuàng)建出來(例如:創(chuàng)建一個名為image的文件夾,用于保存網(wǎng)站中需要的圖片),這樣可以方便以后的開發(fā)工作,也可以規(guī)范網(wǎng)站的整體架構(gòu),我在開發(fā)項目管理系統(tǒng)時,首先設(shè)計了如圖4-1所示的文件夾架構(gòu)圖。在開發(fā)時只需要將文件保存在相應(yīng)的文件夾中就可以了,非常方便。</p><p> 5.2 網(wǎng)站首頁的運行結(jié)果</p><p> 當(dāng)管理員在進(jìn)入項目管理系統(tǒng)
84、后,首先進(jìn)入項目管理系統(tǒng)的大廳,也就是項目管理系統(tǒng)的首頁。項目管理系統(tǒng)首頁包含基礎(chǔ)信息維護(hù)、項目信息維護(hù)、項目服務(wù)、信息查詢、數(shù)據(jù)管理、輔助工具以及系統(tǒng)管理的超鏈接。</p><p> 項目管理系統(tǒng)網(wǎng)站首頁的運行結(jié)果如圖6-1所示。</p><p> 圖6-1 網(wǎng)站首頁運行結(jié)果</p><p> 網(wǎng)站框架說明如表6-1所示:</p><p&
85、gt; 表6-1 網(wǎng)站首頁頁面說明</p><p> 整個網(wǎng)站利用到j(luò)sp中的一個框架,框架由名稱分別為top、left和main的3個jsp頁面組成的,然后利用html代碼在index.jsp(和WEB-INF同級目錄中)頁面中組合起來。</p><p><b> 5.3 類的分布</b></p
86、><p> 整個網(wǎng)站的實現(xiàn)功能利用到的框架Struts,基本上是以“類”的形式實現(xiàn)的。所以我設(shè)計一個類的分布圖如下:</p><p> 圖6-2 類的分布圖</p><p> 各個類所實現(xiàn)的功能如表6-2所示。</p><p> 表6-2 類的功能</p>&
87、lt;p> 第六章 基礎(chǔ)信息維護(hù)模塊設(shè)計</p><p> 基礎(chǔ)信息維護(hù)主要功能塊分為:區(qū)域信息設(shè)置、企業(yè)性質(zhì)設(shè)置、企業(yè)類型設(shè)置、企業(yè)資信設(shè)置、項目級別設(shè)置、項目滿意程度設(shè)置和項目銀行設(shè)置。</p><p> 在這里單擊任何一個功能模塊都是一個查詢功能。這些功能塊的實現(xiàn)方法基本相同,下面以“企業(yè)類型設(shè)置”功能模塊為例,詳細(xì)介紹其通過MVC框架所實現(xiàn)的功能。</p>
88、<p> 單擊“企業(yè)類型設(shè)置”超鏈接,即可進(jìn)入到企業(yè)類型設(shè)置頁。在該頁中可以看到企業(yè)類型的各種詳細(xì)功能,包括對數(shù)據(jù)的添加、修改、刪除功能。下面就分層介紹各種功能的實現(xiàn)。</p><p> 6.1 工具層的實現(xiàn)</p><p> 在工具層(tool文件夾)中主要存放的是常用的基本類,在這里不管任何一項功能都要調(diào)用相對應(yīng)的類的方法。</p><p>
89、 6.1.1 Chinese.java類(字符級轉(zhuǎn)換的類)</p><p> /******************************* Chinese .java*************************************/</p><p> package com.tool;
90、 </p><p> import java.io.UnsupportedEncodingException;</p><p> public class Chinese {</p><p> //將從form 表單中去出的數(shù)據(jù)轉(zhuǎn)換為漢字</p><p> public static String
91、 str(String a) {</p><p><b> try {</b></p><p> return new String(a.getBytes("ISO-8859-1"));</p><p> } catch (UnsupportedEncodingException e) {</p><
92、;p> e.printStackTrace();</p><p> } return null; }</p><p><b> }</b></p><p> 6.1.2 sqlCode.properties文件(sql語句的存放位置)</p><p> /***********************
93、******** sqlCode.properties**********************************/</p><p> #--基礎(chǔ)信息維護(hù)--#</p><p> #--對區(qū)域信息表的操作(tb_Client_qyxx)--#</p><p><b> #--查詢的操作—</b></p><p&
94、gt; sql.qyxx.select=select * from tb_Client_qyxx </p><p><b> #--插入的操作—</b></p><p> sql.qyxx.insert=insert into tb_Client_qyxx values('?','?','?
95、39;,'?','?','?') </p><p> 6.1.3 SQLCode.java類(通過這個類解析properties文件中的sql語句)</p><p> /******************************** SQLCode.java***********************************/<
96、/p><p> package com.tool;</p><p> public final class SQLCode {</p><p> private static SQLCode sqlCode = null;</p><p> private static java.util.Properties sqlCodeProper
97、ties = new java.util.Properties();</p><p><b> static {</b></p><p> sqlCode = new SQLCode();</p><p><b> }</b></p><p> private SQLCode() {<
98、/p><p><b> _load(); </b></p><p> } </p><p> public static String getSQLCode(String sqlKey) {</p><p> String sql = "";&
99、lt;/p><p> if (sqlCodeProperties.containsKey(sqlKey)) {</p><p> sql = sqlCodeProperties.getProperty(sqlKey);</p><p><b> }</b></p><p> return sql;</p>
100、<p><b> }</b></p><p> public static SQLCode getInstance() {</p><p> return sqlCode;</p><p><b> }</b></p><p> //指向sqlcode.properties的
101、位置</p><p> public void _load() {</p><p> String fileName = "/com/tool/sqlCode.properties"; //通過指定路徑找到資源文件存放在fileName中</p><p> sqlCodeProperties.clear(); // SqlCodeP
102、roperties清空</p><p><b> try {</b></p><p> java.io.InputStream in = null; //定義輸出流的變量</p><p><b> try {</b></p><p> in = getClass().getResourc
103、eAsStream(fileName); //把fileName中存放值放入in字符流中</p><p> sqlCodeProperties.load(in); </p><p><b> }</b></p><p><b> finally {</b></p><p> in.c
104、lose();</p><p><b> }</b></p><p><b> }</b></p><p> catch (java.io.IOException e) {</p><p> System.out.println(e.getMessage());</p><
105、;p><b> } }}</b></p><p> 6.1.4 JDBConnction.java(這是個JDBC的類,用于加載數(shù)據(jù)庫)</p><p> /******************************* JDBConnection.java********************************/</p><
106、p> package com.tool;</p><p> import java.sql.DriverManager;</p><p> import java.sql.Connection;</p><p> import java.sql.SQLException;</p><p> import java.sql.Re
107、sultSet;</p><p> import java.sql.Statement;</p><p> //這是一個工具類實現(xiàn)與數(shù)據(jù)庫的連接</p><p> public class JDBConnection {</p><p> String sd = "sun.jdbc.odbc.JdbcOdbcDriver&q
108、uot;; </p><p> String sc = "jdbc:odbc:db_Client"; </p><p> ResultSet rs = null; </p><p> Connection conect = null; </p><p> public JDBConnection() {</p
109、><p><b> try {</b></p><p> Class.forName(sd); //通過構(gòu)造方法加載對象</p><p><b> }</b></p><p> catch (java.lang.ClassNotFoundException e) {</p>&
110、lt;p> System.err.println(e.getMessage());</p><p><b> }</b></p><p><b> }</b></p><p> //只能執(zhí)行查詢的sql語句,并且通過Resulit類型的對象,把所讀取的內(nèi)容返回。</p><p> p
111、ublic ResultSet executeQuery(String sql) {</p><p><b> try {</b></p><p> conect = DriverManager.getConnection(sc);</p><p> Statement stmt = conect.createStatement(Resu
112、ltSet.TYPE_SCROLL_INSENSITIVE,</p><p> ResultSet.CONCUR_READ_ONLY);</p><p> rs = stmt.executeQuery(sql);</p><p><b> }</b></p><p> catch (SQLException ex
113、) {</p><p> System.err.println(ex.getMessage());</p><p><b> }</b></p><p> return rs;</p><p><b> }</b></p><p> public int execu
114、teUpdate(String sql) { //能夠執(zhí)行修改。刪除和插入的sql語句。</p><p> int result = 0;</p><p><b> try {</b></p><p> conect = DriverManager.getConnection(sc);</p><p> S
115、tatement stmt = conect.createStatement();</p><p> result = stmt.executeUpdate(sql);</p><p><b> }</b></p><p> catch (SQLException er) {</p><p> System.er
116、r.println(er.getMessage());</p><p><b> }</b></p><p> return result;</p><p><b> }</b></p><p> public void close() { //數(shù)據(jù)庫連接關(guān)閉的方法</
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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
提交評論