版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于JSP基金管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)</p><p><b> 專(zhuān) 業(yè):</b></p><p><b> 年 級(jí):</b></p><p><b> 學(xué) 號(hào):</b></p><p><b> 作 者:</b
2、></p><p><b> 指導(dǎo)老師:</b></p><p> The Research and Design Based on JSP Fund management JSP</p><p><b> Abstract</b></p><p> With the rapid de
3、velopment of Internet, people no longer meet the purpose of information browsing and publishing, but eager to fully enjoy the network brought more and more convenient. Fund Management JSP design and development are adapt
4、ed to live in today's fast-paced society, so that customers can enjoy convenient and easy to learn about the latest situation of the Fund, through the purchase fund to increase revenue, reasonable financial managemen
5、t.</p><p> The system is trying to use the network architecture of a JSP dynamic JSP site fund management; it is in Windows 7, the My SQL database platform, Tomcat application server as a network informatio
6、n service using JSP technology development of the fund management page. It includes a user registration, user login, fund accounts, capital account information inquiries, fund purchase, redemption, user management, fund
7、management, customer management, customer financial account management, client fund a</p><p> The design aims to improve and enhance the the working efficiency of enterprise. make fund management of such en
8、terprises in the new mode more convenient, simple, the working efficiency is higher, thus reducing the time which was taken by face-to-face communication between customer and the enterprise personnel. Reducing the amount
9、 of workloads and management pressure. We believe that with the completion of this system, fund management enterprise management operation will be more efficient, fund </p><p> Key words: fund, website, JSP
10、</p><p> 基于JSP的基金管理系統(tǒng)的研究與設(shè)計(jì)</p><p><b> 摘 要</b></p><p> 伴隨著Internet的蓬勃發(fā)展,人們已經(jīng)不再滿(mǎn)足用途信息的瀏覽和發(fā)布,而是渴望著能夠充分享受網(wǎng)絡(luò)所帶來(lái)的更加多的便利?;鸸芾砭W(wǎng)頁(yè)的設(shè)計(jì)與開(kāi)發(fā)正適應(yīng)了當(dāng)今社會(huì)快節(jié)奏地生活,使顧客足不出戶(hù)便可以方便快捷輕松了解最新的基金情
11、況,通過(guò)購(gòu)買(mǎi)基金增加收入,合理理財(cái)。</p><p> 本系統(tǒng)便是嘗試用JSP在網(wǎng)絡(luò)上架構(gòu)一個(gè)動(dòng)態(tài)的基金管理網(wǎng)頁(yè)的網(wǎng)站,它是在Windows 7下,以My SQL 為數(shù)據(jù)庫(kù)開(kāi)發(fā)平臺(tái),Tomcat網(wǎng)絡(luò)信息服務(wù)作為應(yīng)用服務(wù)器,采用JSP技術(shù)開(kāi)發(fā)的基金管理網(wǎng)頁(yè)。他主要包括了用戶(hù)注冊(cè),用戶(hù)登陸,基金賬戶(hù)、資金賬戶(hù)信息查詢(xún),基金購(gòu)買(mǎi),基金贖回,用戶(hù)管理,基金管理,客戶(hù)管理,客戶(hù)資金賬戶(hù)管理,客戶(hù)基金賬戶(hù)管理等功能。另外具
12、有模糊查詢(xún)功能,使管理人員更加容易定位相關(guān)客戶(hù)與查詢(xún)某類(lèi)信息。</p><p> 該設(shè)計(jì)旨在改善并提高企業(yè)的工作效率,使基金類(lèi)企業(yè)的管理在新的模式下更方便,簡(jiǎn)單,工作效率更高,從而減少客戶(hù)與企業(yè)人員的面對(duì)面交流時(shí)間。大量減少管理人員的工作量與相應(yīng)壓力。我們相信隨著本系統(tǒng)的完成,基金管理企業(yè)的管理運(yùn)作會(huì)更加高效,基金行業(yè)會(huì)朝著更加方便更加便捷的方向健康快速的發(fā)展。同時(shí)也我個(gè)人分析和撰寫(xiě)論文的能力得到訓(xùn)練和提高,動(dòng)
13、手能力得到進(jìn)一步加強(qiáng),專(zhuān)業(yè)知識(shí)水平和設(shè)計(jì)研究能力得到進(jìn)一步的提高。</p><p> 關(guān)鍵詞:基金,網(wǎng)站,JSP </p><p><b> 目 錄 </b></p><p> 1 項(xiàng)目開(kāi)發(fā)簡(jiǎn)介1</p><p> 1.1 項(xiàng)目開(kāi)發(fā)背景1</p><p> 1.2 項(xiàng)目開(kāi)發(fā)目標(biāo)1&
14、lt;/p><p> 1.3 項(xiàng)目開(kāi)發(fā)平臺(tái)簡(jiǎn)介2</p><p> 1.3.1 基于瀏覽器/服務(wù)器的體系結(jié)構(gòu)2</p><p> 1.3.2 面向?qū)ο蟮膽?yīng)用程序開(kāi)發(fā)方法2</p><p> 1.3.3 可視化的開(kāi)發(fā)環(huán)境3</p><p> 1.3.4 Dreamweaver概述3</p>
15、<p> 1.3.5 Tomcat服務(wù)器3</p><p> 2 系統(tǒng)概要設(shè)計(jì)4</p><p> 2.1 設(shè)計(jì)思想4</p><p> 2.2 設(shè)計(jì)原則4</p><p> 2.3 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)4</p><p> 2.3.1 數(shù)據(jù)庫(kù)的分析4</p><p>
16、; 2.3.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)5</p><p> 2.4 運(yùn)行設(shè)計(jì)6</p><p> 2.5 安全保密設(shè)計(jì)7</p><p> 3 功能模塊具體設(shè)計(jì)8</p><p> 3.1 用戶(hù)管理頁(yè)面8</p><p> 3.1.1 登陸頁(yè)面8</p><p> 3.1.2 注
17、冊(cè)頁(yè)面設(shè)計(jì)8</p><p> 3.2 主操作界面9</p><p> 3.2.1 主功能頁(yè)面9</p><p> 3.2.2增添頁(yè)面9</p><p> 3.2.3刪除頁(yè)面10</p><p> 3.2.4 修改頁(yè)面11</p><p> 3.2.5 查找頁(yè)面11&l
18、t;/p><p> 4 程序的設(shè)計(jì)與開(kāi)發(fā)13</p><p> 4.1 程序的設(shè)計(jì)思想13</p><p> 4.2 程序的具體設(shè)計(jì)13</p><p> 4.2.1 程序設(shè)計(jì)語(yǔ)言13</p><p> 4.2.2 數(shù)據(jù)庫(kù)聯(lián)接14</p><p> 4.3 程序中遇到的問(wèn)題1
19、5</p><p> 4.3.1 關(guān)于JSP亂碼問(wèn)題的解決15</p><p> 5 程序的測(cè)試與維護(hù)18</p><p> 5.1 測(cè)試的重要性及目的18</p><p> 5.1.1 測(cè)試的重要性18</p><p> 5.1.2 測(cè)試的目的18</p><p> 5.
20、2 測(cè)試的步驟19</p><p> 5.3 測(cè)試的主要內(nèi)容19</p><p> 6 系統(tǒng)的維護(hù)21</p><p> 7 結(jié) 論錯(cuò)誤!未定義書(shū)簽。</p><p> 參考文獻(xiàn)錯(cuò)誤!未定義書(shū)簽。</p><p><b> 附 錄Ⅰ23</b></p><
21、p> 畢業(yè)設(shè)計(jì)說(shuō)明書(shū)(論文)縮寫(xiě)稿譯文26</p><p> The Abbreviation Version of the Thesis of Undergraduates31</p><p><b> 1 項(xiàng)目開(kāi)發(fā)簡(jiǎn)介</b></p><p> 1.1 項(xiàng)目開(kāi)發(fā)背景</p><p> 當(dāng)今,席卷全
22、球的信息化大潮把信息管理推倒了時(shí)代發(fā)展的前沿,信息管理系統(tǒng)已經(jīng)成為全社會(huì)注視的熱點(diǎn)。隨著科學(xué)技術(shù)的發(fā)展,今天的計(jì)算機(jī)已經(jīng)深入到社會(huì)和生活的各個(gè)領(lǐng)域,廣泛的應(yīng)用于農(nóng)業(yè)生產(chǎn)、國(guó)防和科研領(lǐng)域,尤其在信息管理系統(tǒng)方面其發(fā)展的規(guī)模和應(yīng)用程度已經(jīng)成為一個(gè)國(guó)家現(xiàn)代化水平的重要標(biāo)志。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已成為人們深刻認(rèn)識(shí),它已進(jìn)入人類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。人們可以將大量的繁瑣的工作交給計(jì)算機(jī)去完成,
23、從而大大提高了工作效率,此外,計(jì)算機(jī)可以利用長(zhǎng)期使用過(guò)程中所存貯的大量數(shù)據(jù)進(jìn)行數(shù)據(jù)分析,為管理者進(jìn)行決策提供可靠的信息資料。</p><p> 目前網(wǎng)絡(luò)發(fā)展前景無(wú)限,及早與網(wǎng)絡(luò)結(jié)合,與信息時(shí)代同步,與高科技匯合,定會(huì)給社會(huì)各行各業(yè)的發(fā)展注入新鮮的活力。站在網(wǎng)絡(luò)時(shí)代的前沿,我們清晰地看到了網(wǎng)絡(luò)時(shí)代的宣言:誰(shuí)掌握了網(wǎng)絡(luò),誰(shuí)就掌握了未來(lái)。然而我們清晰地看到了JSP以良好的擴(kuò)展性和兼容性、強(qiáng)大的交互能力和數(shù)據(jù)處理能力,
24、迅速風(fēng)靡全球,在Internet上幾乎處處都能看到它的身影。目前市面上對(duì)JSP技術(shù)的需求極其熱切,幾乎絕大部分的網(wǎng)站建設(shè)和企業(yè)的信息管理系統(tǒng)都是采用JSP技術(shù)。</p><p> 由于基金管理行業(yè)種類(lèi)眾多,各種信息內(nèi)容繁瑣,而且信息量大,因而在操作上經(jīng)常造成很多不便之處,浪費(fèi)了時(shí)間,降低了工作效率,而且極大地影響了基金管理行業(yè)的質(zhì)量和經(jīng)濟(jì)效益。由此我們小組設(shè)計(jì)了這個(gè)基金管理系統(tǒng)。該管理系統(tǒng)的開(kāi)發(fā),本著科學(xué)化、規(guī)
25、范化、系統(tǒng)化的原則,并考慮到基金的實(shí)際情況,采用瀏覽器和服務(wù)器結(jié)構(gòu),該系統(tǒng)支持SQL具有查詢(xún)方便、安全保密性好、用戶(hù)界面友好、容易操作等優(yōu)點(diǎn)。應(yīng)用此管理系統(tǒng)后,瀏覽者可以很方便的了解此基金類(lèi)型的概況以及最新的種類(lèi),為潛在的客戶(hù)群節(jié)省了大量時(shí)間,很大程度上提高了基金的工作效率和服務(wù)質(zhì)量,進(jìn)而為基金行業(yè)帶來(lái)經(jīng)濟(jì)上的收獲。</p><p> 1.2 項(xiàng)目開(kāi)發(fā)目標(biāo)</p><p> 本系統(tǒng)結(jié)構(gòu)
26、設(shè)計(jì)合理,功能齊全,信息指標(biāo)豐富、規(guī)范;采用模塊化設(shè)計(jì)、結(jié)構(gòu)合理、操作簡(jiǎn)單,具有友好的人機(jī)界面和靈活和的系統(tǒng)可維護(hù)性;有優(yōu)越的數(shù)據(jù)共享性,可以使用戶(hù)充分的利用歷史數(shù)據(jù),減少據(jù)的重復(fù)錄入和工作量;方便快捷有效的完成基金管理系統(tǒng)的各項(xiàng)工作,錄入數(shù)據(jù)合法性的校驗(yàn)程度高,數(shù)據(jù)查詢(xún)速度快;有廣泛的網(wǎng)絡(luò)選擇性,可以形成瀏覽器和服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫(kù)系統(tǒng)。同時(shí)本項(xiàng)目致力于研究開(kāi)發(fā)系統(tǒng)一體化,為客戶(hù)提供方便,減少客戶(hù)選則的盲目性,節(jié)約時(shí)間,方便客戶(hù)。本項(xiàng)目
27、的具體設(shè)計(jì)目標(biāo)如下:</p><p> (1) 以用戶(hù)為中心的信息組織:信息組織也稱(chēng)為內(nèi)容組織,就是指管理信息系統(tǒng)將向訪(fǎng)問(wèn)者提供哪些信息,這是該系統(tǒng)建設(shè)實(shí)施的第一步,在項(xiàng)目的建設(shè)方案的基礎(chǔ)上,要根據(jù)其功能、特點(diǎn)分類(lèi),進(jìn)一步確定該系統(tǒng)的信息重點(diǎn)及信息之間的關(guān)聯(lián),從而明確各項(xiàng)信息內(nèi)容,為下一步的視覺(jué)設(shè)計(jì)奠定基礎(chǔ)。 </p><p> (2) 設(shè)計(jì)線(xiàn)索:項(xiàng)目在信息導(dǎo)航上應(yīng)該以單數(shù)據(jù)庫(kù)和界面功
28、能為線(xiàn)索,使信息數(shù)量多但不重復(fù)、不出錯(cuò)。</p><p> (3) 個(gè)性化視覺(jué)設(shè)計(jì):界面視覺(jué)設(shè)計(jì)不僅反映了開(kāi)發(fā)人員對(duì)該管理系統(tǒng)市場(chǎng)需求的理解、識(shí)別系統(tǒng)的概括,同時(shí)還應(yīng)該能夠反映出經(jīng)營(yíng)運(yùn)作的內(nèi)涵,在客戶(hù)的審美點(diǎn)與頁(yè)面的操作點(diǎn)之間取得平衡,努力推出既能夠滿(mǎn)足客戶(hù)心理需要的視覺(jué)設(shè)計(jì),同時(shí)又能夠體現(xiàn)行業(yè)化、個(gè)性化及公司特點(diǎn)。</p><p> 本項(xiàng)目開(kāi)發(fā)目標(biāo)是通過(guò)頁(yè)面操作來(lái)幫助客戶(hù)了解基金并更
29、方便的購(gòu)買(mǎi)基金,客戶(hù)可以在頁(yè)面中看到已經(jīng)更新的基金信息,并針對(duì)信息做出選擇進(jìn)行回應(yīng)。</p><p> 1.3 項(xiàng)目開(kāi)發(fā)平臺(tái)簡(jiǎn)介</p><p> 開(kāi)發(fā)工具、運(yùn)行環(huán)境及其他所需軟件。</p><p> 1.3.1 基于瀏覽器/服務(wù)器的體系結(jié)構(gòu)</p><p> B/S結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu),由三部分組成,一是數(shù)據(jù)庫(kù)服務(wù)器,二是Web
30、服務(wù)器,三是IE客戶(hù)端。所有有源代碼在JSP服務(wù)器上,接收客戶(hù)的請(qǐng)求執(zhí)行服務(wù)端的代碼,通過(guò)代碼與數(shù)據(jù)庫(kù)交互,向客戶(hù)端響應(yīng)頁(yè)面。IE只是發(fā)送請(qǐng)求接收響應(yīng)將其解析并顯示給用戶(hù)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶(hù)工作界面是通過(guò)WWW瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客
31、戶(hù)端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶(hù)的總體成本。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過(guò)Internet/Intranet模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪(fǎng)問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪(fǎng)問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全。在JAVA這樣
32、的跨平臺(tái)語(yǔ)言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方</p><p> 1.3.2 面向?qū)ο蟮膽?yīng)用程序開(kāi)發(fā)方法</p><p> 對(duì)象(OBJECT) ,是包含相關(guān)的數(shù)據(jù)(以變量的形式)以及用于操作這些數(shù)據(jù)的方法(子程序)的軟件包。一個(gè)對(duì)象是一個(gè)類(lèi)的具體表現(xiàn),在功能上它與其它程序保持獨(dú)立,一個(gè)定義良好的對(duì)象具有封裝的數(shù)據(jù)和功能。面向?qū)ο蟪绦蛟O(shè)計(jì)的基本要素是抽象,程序員通過(guò)抽象來(lái)管理復(fù)雜性。管
33、理抽象的有效方法是使用層次式的分類(lèi)特性,這種方法允許用戶(hù)根據(jù)物理含義分解一個(gè)復(fù)雜的系統(tǒng)。</p><p> 1.3.3 可視化的開(kāi)發(fā)環(huán)境</p><p> 用戶(hù)不用了解WINDOWS和編程技術(shù),通過(guò)圖形化的交互操作,就可以設(shè)計(jì)實(shí)現(xiàn)應(yīng)用系統(tǒng),開(kāi)發(fā)出美觀、簡(jiǎn)潔的圖形化界面來(lái)。</p><p> 1.3.4 Dreamweaver概述</p><
34、;p> Dreamweaver一個(gè)可視化的網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站管理工具,支持最新的JSP技術(shù),包含HTML檢查、HTML格式控制、HTML格式化選項(xiàng)、Home Site/BBEdit捆綁、可視化網(wǎng)頁(yè)設(shè)計(jì)、圖像編輯、全局查找替換和處理Flash等富媒體格式和動(dòng)態(tài)HTML、基于團(tuán)隊(duì)的JSP創(chuàng)作,在編輯上你可以選擇可視化方式或者你喜歡的源碼編輯方式。</p><p> 圖1-1 頁(yè)面設(shè)計(jì)圖</p>&
35、lt;p> 1.3.5 Tomcat服務(wù)器</p><p> Tomcat服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的JSP應(yīng)用服務(wù)器,是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪(fǎng)問(wèn)用戶(hù)不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試Java程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache服務(wù)器,可利用它響應(yīng)對(duì)HTML頁(yè)面的訪(fǎng)問(wèn)請(qǐng)求。實(shí)際上Tomcat部分是Apache服務(wù)器的擴(kuò)展,但它是
36、獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat時(shí),它實(shí)際上作為一個(gè)與Apache獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 </p><p><b> 2 系統(tǒng)概要設(shè)計(jì)</b></p><p><b> 2.1 設(shè)計(jì)思想</b></p><p> (1) 系統(tǒng)分成幾個(gè)相對(duì)獨(dú)立的模塊,但這些模塊都進(jìn)行集中式管理。</p><p
37、> (2) 分層的模塊化程序設(shè)計(jì)思想,整個(gè)系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計(jì)。作為應(yīng)用程序有較強(qiáng)的可操作性和擴(kuò)展性。</p><p> (3) 合理的數(shù)據(jù)流設(shè)計(jì),在應(yīng)用系統(tǒng)設(shè)計(jì)中,相對(duì)獨(dú)立的模塊間以數(shù)據(jù)流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運(yùn)行,提高系統(tǒng)安全性。</p><p><b> 2.2 設(shè)計(jì)原則</b></p><p> 為了
38、使本系統(tǒng)功能齊全完備,操作簡(jiǎn)便,最大限度的提高軟件的質(zhì)量,從而滿(mǎn)足用戶(hù)的實(shí)際需要,在設(shè)計(jì)開(kāi)發(fā)過(guò)程中遵循了如下原則:</p><p> (1) 準(zhǔn)確性原則:對(duì)輸入的相關(guān)資料建立檢錯(cuò)機(jī)制,及時(shí)報(bào)錯(cuò),使用戶(hù)能夠及時(shí)準(zhǔn)確的輸入合法資料(如:類(lèi)型匹配,長(zhǎng)度不超限等)。</p><p> (2) 易操作原則:要求設(shè)計(jì)的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進(jìn)行提示。</p>&
39、lt;p> (3) 源程序可讀性原則:為了便于其他設(shè)計(jì),維護(hù)人員讀懂代碼或以后的代碼修改,軟件升級(jí)維護(hù),即可能做好代碼注釋工作。</p><p> (4) 優(yōu)化原則:為了達(dá)到優(yōu)化的目的,合理的運(yùn)用窗口,菜單,對(duì)象等的繼承,自定義用戶(hù)對(duì)象,事件,函數(shù),減少不必要的重復(fù)性代碼,使程序簡(jiǎn)介明了,也方便了將來(lái)的維護(hù)。</p><p> (5) 安全性原則:可以為該系統(tǒng)的用戶(hù)設(shè)置用戶(hù)權(quán)限
40、。</p><p> 2.3 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)</p><p> 2.3.1 數(shù)據(jù)庫(kù)的分析</p><p> 數(shù)據(jù)庫(kù)是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的,有組織的,可共享的數(shù)據(jù)集合,在一個(gè)信息管理系統(tǒng)中占非常重要的地位,它能夠能充分滿(mǎn)足各種信息的輸入和輸出。通過(guò)收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,根據(jù)對(duì)相關(guān)信息的集和統(tǒng)計(jì),以及對(duì)用戶(hù)所關(guān)心和需要了解的信息的分析需要建立以下
41、數(shù)據(jù)集:</p><p> 在之前的需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿(mǎn)足用戶(hù)需求的各種實(shí)體,以及它們的關(guān)系。集成了來(lái)自不同用戶(hù)對(duì)現(xiàn)實(shí)信息描述所構(gòu)成的外部視圖,形成全局的概念模型,進(jìn)而可以轉(zhuǎn)換成數(shù)據(jù)庫(kù)的模式。</p><p> 本系統(tǒng)的操作多是對(duì)數(shù)據(jù)庫(kù)的操作,諸如基金功能模塊實(shí)現(xiàn)添加、刪除、修改和查詢(xún)等。因此數(shù)據(jù)庫(kù)的結(jié)構(gòu)設(shè)計(jì)是一個(gè)非常重要的環(huán)節(jié),數(shù)據(jù)庫(kù)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率。好的數(shù)
42、據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)的完整性和一致性,也便于提高數(shù)據(jù)存儲(chǔ),可使系統(tǒng)具有較高的響應(yīng)速度,簡(jiǎn)化基于數(shù)據(jù)庫(kù)的應(yīng)用程序的設(shè)計(jì)實(shí)現(xiàn)。</p><p> 本數(shù)據(jù)的具體鏈接會(huì)在下文進(jìn)行介紹。</p><p> 2.3.2 數(shù)據(jù)庫(kù)的設(shè)計(jì)</p><p> 數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)使用的數(shù)據(jù)庫(kù)管理系統(tǒng)以及系統(tǒng)開(kāi)發(fā)工具設(shè)計(jì)出數(shù)據(jù)庫(kù)以及各個(gè)數(shù)據(jù)表的結(jié)構(gòu)。</p><p
43、> 本系統(tǒng)數(shù)據(jù)庫(kù)開(kāi)發(fā)匯集各種信息以供查詢(xún)、存儲(chǔ)和檢索。其優(yōu)點(diǎn)在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。它提供數(shù)據(jù)存儲(chǔ)庫(kù),可以使用桌面數(shù)據(jù)庫(kù)文件把數(shù)據(jù)庫(kù)文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶(hù)共享數(shù)據(jù)庫(kù)。本系統(tǒng)數(shù)據(jù)庫(kù)是一種關(guān)系型數(shù)據(jù)庫(kù)工具,關(guān)系數(shù)據(jù)庫(kù)是已開(kāi)發(fā)的最通用的數(shù)據(jù)庫(kù)。</p><p> (1) 數(shù)據(jù)庫(kù)描述功能:定義數(shù)據(jù)庫(kù)的全局邏輯結(jié)構(gòu)(概念模式)、局部邏輯的結(jié)構(gòu)(外模式)以及其它各種數(shù)據(jù)庫(kù)對(duì)象;&
44、lt;/p><p> (2) 數(shù)據(jù)庫(kù)管理功能:包括系統(tǒng)控制、數(shù)據(jù)存儲(chǔ)以及更新管理、數(shù)據(jù)安全性與一致性維護(hù);</p><p> (3) 數(shù)據(jù)庫(kù)查詢(xún)和操作功能:能從數(shù)據(jù)庫(kù)中檢索住處或者改變信息;</p><p> (4) 數(shù)據(jù)庫(kù)建立與維護(hù)功能:包括數(shù)據(jù)寫(xiě)入、數(shù)據(jù)庫(kù)重建、數(shù)據(jù)庫(kù)結(jié)構(gòu)維護(hù)、恢復(fù)以及系統(tǒng)性能監(jiān)視等。</p><p> 此次設(shè)計(jì)根據(jù)數(shù)
45、據(jù)的大小以及管理的便捷性選擇My SQL作為數(shù)據(jù)庫(kù)管理系統(tǒng),使用數(shù)據(jù)管理器創(chuàng)建數(shù)據(jù)庫(kù)。按照前面分析的系統(tǒng),設(shè)計(jì)出系統(tǒng)數(shù)據(jù)庫(kù)中的各個(gè)數(shù)據(jù)表如下:</p><p> 得到以上的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)以后,就可以設(shè)計(jì)出能夠滿(mǎn)足用戶(hù)需求的各種設(shè)計(jì),他們之間的關(guān)系為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ),這些實(shí)體包含各種具體信息,通過(guò)相互之間的作用形成數(shù)據(jù)的流動(dòng)。這在以后的設(shè)計(jì)中的作用十分重要。</p><p>
46、 表2-1 客戶(hù)注冊(cè)表</p><p> 表2-2 資金賬戶(hù)表</p><p><b> 表2-3 基金信息</b></p><p> 表2-4 基金賬戶(hù)信息</p><p> 表2-5車(chē)票機(jī)票信息</p><p><b> 2.4 運(yùn)行設(shè)計(jì)</b></p&g
47、t;<p> 本系統(tǒng)運(yùn)行后,首先啟動(dòng)初始化模塊,顯示界面登陸,進(jìn)行注冊(cè)、登陸。如果需要進(jìn)入主操作頁(yè)面,可以用已注冊(cè)用戶(hù)登陸。運(yùn)行完畢退出登陸,關(guān)閉數(shù)據(jù)庫(kù)連接并退出系統(tǒng)。各個(gè)模塊運(yùn)行時(shí)間均應(yīng)控制在3-5秒內(nèi)(其中大部分時(shí)間為響應(yīng)用戶(hù)的動(dòng)作)。</p><p> 2.5 安全保密設(shè)計(jì)</p><p> (1) 在用戶(hù)登陸系統(tǒng)時(shí)進(jìn)行身份驗(yàn)證,只允許合法用戶(hù)進(jìn)入系統(tǒng)。</
48、p><p> (2) 即時(shí)的權(quán)限分配功能,允許管理員即時(shí)對(duì)用戶(hù)的權(quán)限進(jìn)行分配,充分保證了系統(tǒng)運(yùn)行的安全性。</p><p> (3) 對(duì)系統(tǒng)管理員和一般操作員實(shí)行功能分離,即有些功能只有系統(tǒng)管理員能用。</p><p> (4) 數(shù)據(jù)庫(kù)的備份功能,保證了數(shù)據(jù)的安全。</p><p> 3 功能模塊具體設(shè)計(jì)</p><p
49、> 3.1 用戶(hù)管理頁(yè)面</p><p> 在此網(wǎng)站的設(shè)計(jì)過(guò)程中,我們擁有一個(gè)用戶(hù)管理模塊,擁有兩個(gè)主要的功能,用戶(hù)登陸和用戶(hù)注冊(cè)。用戶(hù)因分配有不同的密碼,可以擁有不同的權(quán)限。注冊(cè)過(guò)的用戶(hù)可以登陸進(jìn)入主頁(yè)面。</p><p> 登陸或注冊(cè)失敗,會(huì)顯示錯(cuò)誤頁(yè)面,提醒從新登陸或注冊(cè)。</p><p> 3.1.1 登陸頁(yè)面</p><p
50、> 根據(jù)權(quán)限的不同,要進(jìn)入功能模塊必須進(jìn)行用戶(hù)名、用戶(hù)編號(hào)和密碼登陸,用戶(hù)根據(jù)自己的密碼和賬戶(hù),進(jìn)行自己的權(quán)限以及進(jìn)行相關(guān)的功能。</p><p> 在此模塊的設(shè)計(jì)中,主要是增添的按鈕起作用,通過(guò)鏈接數(shù)據(jù)庫(kù),實(shí)現(xiàn)用戶(hù)的登陸和注冊(cè)。如果用戶(hù)輸入的用戶(hù)名、用戶(hù)編號(hào)或密碼錯(cuò)誤則會(huì)彈出一個(gè)對(duì)話(huà)框,顯示錯(cuò)誤。</p><p><b> 圖3-1 登陸頁(yè)面</b>&l
51、t;/p><p> 3.1.2 注冊(cè)頁(yè)面設(shè)計(jì)</p><p> 如果用戶(hù)在查看基金的過(guò)程中發(fā)現(xiàn)自己想購(gòu)買(mǎi)一些種類(lèi),則需要進(jìn)行申請(qǐng),若要申請(qǐng)則需要注冊(cè)一系列的信息,根據(jù)我們的提示進(jìn)行一些注冊(cè)。注冊(cè)頁(yè)面的功能則是實(shí)現(xiàn)新用戶(hù)的增加,注冊(cè)成功后會(huì)彈出一個(gè)對(duì)話(huà)框,歡迎您注冊(cè)成功。</p><p> 在此過(guò)程中用戶(hù)要保證信息的準(zhǔn)確性這在以后的過(guò)程中將會(huì)十分如重要。如果注冊(cè)成功
52、,用戶(hù)可以進(jìn)行相關(guān)功能的操作。</p><p><b> 圖3-2 注冊(cè)頁(yè)面</b></p><p><b> 3.2 主操作界面</b></p><p> 用戶(hù)對(duì)象是各個(gè)模塊的管理員,從理論上講每個(gè)模塊均有一個(gè)管理員,根據(jù)模塊的不同,每個(gè)管理員的登陸密碼不同。后臺(tái)是管理員進(jìn)行操作的關(guān)鍵部分,管理員主要是進(jìn)行對(duì)數(shù)據(jù)庫(kù)
53、的操作。</p><p> 3.2.1 主功能頁(yè)面</p><p> 主頁(yè)面顯示,作為管理員在進(jìn)入界面后可以進(jìn)行基金信息的編寫(xiě)以及提交,同時(shí)對(duì)于其他的信息,管理員可以進(jìn)行各個(gè)功能的實(shí)現(xiàn)。</p><p> 圖3-3 基金賬戶(hù)頁(yè)面</p><p><b> 3.2.2增添頁(yè)面</b></p><
54、p> 管理員在此模塊更新相關(guān)的信息即銷(xiāo)售人員、基金管理信息、客戶(hù)管理信息、客戶(hù)資金賬戶(hù)管理信息和客戶(hù)基金賬戶(hù)管理的增添。</p><p> 管理員根據(jù)市場(chǎng)的需要,更新產(chǎn)品的清單,進(jìn)行產(chǎn)品的輸入。此過(guò)程涉及到數(shù)據(jù)庫(kù)的應(yīng)用。管理員需要根據(jù)各項(xiàng)提示進(jìn)行輸入,此信息需要及時(shí)更新,方能吸引客戶(hù)就行,同時(shí)應(yīng)盡可能從最大程度上為客戶(hù)提供方便。另一方面盡量使頁(yè)面漂亮。</p><p> 圖3-
55、4 客服增加頁(yè)面</p><p> 圖3-5 客服增加頁(yè)面</p><p><b> 3.2.3刪除頁(yè)面</b></p><p> 管理員在此模塊更新相關(guān)的信息即銷(xiāo)售人員、基金管理信息、客戶(hù)管理信息、客戶(hù)資金賬戶(hù)管理信息和客戶(hù)基金賬戶(hù)管理的刪除。</p><p> 圖3-6 客服刪除頁(yè)面</p>&
56、lt;p> 3.2.4 修改頁(yè)面</p><p> 管理員在此模塊更新相關(guān)的信息即銷(xiāo)售人員、基金管理信息、客戶(hù)管理信息、客戶(hù)資金賬戶(hù)管理信息和客戶(hù)基金賬戶(hù)管理的修改。</p><p> 能夠依據(jù)基金信息瀏覽的趨勢(shì),修改的基金類(lèi)型,刪除不需要的?;痤?lèi)型要適合各個(gè)年齡階層的人,適用性要強(qiáng)。</p><p> 圖3-7 客服修改頁(yè)面</p>
57、<p> 3.2.5 查找頁(yè)面</p><p> 管理員在此模塊對(duì)相關(guān)的信息即銷(xiāo)售人員、基金管理信息、客戶(hù)管理信息、客戶(hù)資金賬戶(hù)管理信息和客戶(hù)基金賬戶(hù)管理的查找。</p><p> 圖3-7 客服查找頁(yè)面</p><p> 圖3-8 查找頁(yè)面顯示</p><p> 以上分別介紹了幾個(gè)典型的系統(tǒng)維護(hù)模塊界面的設(shè)計(jì),其功能各不
58、相同,同時(shí)我們還有其他一些頁(yè)面在這里并沒(méi)有進(jìn)行介紹,應(yīng)為這些余留頁(yè)面的功能和上述介紹的界面功能類(lèi)似。</p><p> 4 程序的設(shè)計(jì)與開(kāi)發(fā)</p><p> 4.1 程序的設(shè)計(jì)思想</p><p> 在上兩章著重討論了系統(tǒng)功能模塊的設(shè)計(jì),詳細(xì)分析了每一個(gè)模塊的功能,所有計(jì)算機(jī)均由兩種元素組成:代碼和數(shù)據(jù)。精確的說(shuō),有些程序是圍繞著“什么正在發(fā)生”而編寫(xiě),有些
59、則是圍繞“誰(shuí)正在受影響”而編寫(xiě)的。第一種編程方式叫做“面向過(guò)程的模型”,按這種模型編寫(xiě)的程序以一系列的線(xiàn)性步驟(代碼)為特征,可被理解為作用于數(shù)據(jù)的代碼。第二種編程方式叫做“面向?qū)ο蟮哪P汀?,按這種模型編寫(xiě)的程序圍繞著程序的數(shù)據(jù)(對(duì)象)和針對(duì)該對(duì)象而嚴(yán)格定義的接口來(lái)組織程序,它的特點(diǎn)是數(shù)據(jù)控制代碼的訪(fǎng)問(wèn).通過(guò)把控制權(quán)轉(zhuǎn)移到數(shù)據(jù)上,面向?qū)ο蟮哪P驮诮M織方式上有:抽象,封裝,繼承和多態(tài)的好處。</p><p> 面
60、向?qū)ο蟪绦蛟O(shè)計(jì)的基本要素是抽象,程序員通過(guò)抽象來(lái)管理復(fù)雜性。管理抽象的有效方法是使用層次式的分類(lèi)特性,這種方法允許用戶(hù)根據(jù)物理含義分解一個(gè)復(fù)雜的系統(tǒng),把它劃分成更容易管理的塊。例如,一個(gè)計(jì)算機(jī)系統(tǒng)是一個(gè)獨(dú)立的對(duì)象.而在計(jì)算機(jī)系統(tǒng)內(nèi)部由幾個(gè)子系統(tǒng)組成:顯示器,鍵盤(pán),硬盤(pán)驅(qū)動(dòng)器,DVD-ROM,軟盤(pán),音響等,這些子系統(tǒng)每個(gè)又由專(zhuān)門(mén)的部件組成。關(guān)鍵是需要使用層次抽象來(lái)管理計(jì)算機(jī)系統(tǒng)(或其他任何復(fù)雜系統(tǒng))的復(fù)雜性。 </p>&l
61、t;p> 4.2 程序的具體設(shè)計(jì)</p><p> 設(shè)計(jì)界面語(yǔ)言和運(yùn)行程序代碼的編寫(xiě)。</p><p> 4.2.1 程序設(shè)計(jì)語(yǔ)言</p><p><b> (1) HTML</b></p><p> HTML(HyperTextMark-upLanguage)即超文本標(biāo)記語(yǔ)言,是目前網(wǎng)絡(luò)上應(yīng)用最為廣泛
62、的語(yǔ)言,也是構(gòu)成網(wǎng)頁(yè)文檔的主要語(yǔ)言。設(shè)計(jì)HTML語(yǔ)言的目的是為了能把存放在一臺(tái)電腦中的文本或圖形與另一臺(tái)電腦中的文本或圖形方便地聯(lián)系在一起,形成有機(jī)的整體,人們不用考慮具體信息是在當(dāng)前電腦上還是在網(wǎng)絡(luò)的其它電腦上。我們只需使用鼠標(biāo)在某一文檔中點(diǎn)取一個(gè)圖標(biāo),Internet就會(huì)馬上轉(zhuǎn)到與此圖標(biāo)相關(guān)的內(nèi)容上去,而這些信息可能存放在網(wǎng)絡(luò)的另一臺(tái)電腦中。 HTML文本是由HTML命令組成的描述性文本,HTML命令可以說(shuō)明文字、圖形、動(dòng)畫(huà)、聲音、
63、表格、鏈接等。HTML的結(jié)構(gòu)包括頭部(Head)、主體(Body)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說(shuō)明的具體內(nèi)容。 </p><p> (2) JavaScript</p><p> JavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有安全性能的腳本語(yǔ)言,有了JavaScript,可使網(wǎng)頁(yè)變得生動(dòng)。使用它的目的是與HTML超文本標(biāo)識(shí)語(yǔ)言、Java 腳本語(yǔ)言一起實(shí)現(xiàn)
64、在一個(gè)網(wǎng)頁(yè)中鏈接多個(gè)對(duì)象,與網(wǎng)絡(luò)客戶(hù)交互作用,從而可以開(kāi)發(fā)客戶(hù)端的應(yīng)用程序。它是通過(guò)嵌入或調(diào)入在標(biāo)準(zhǔn)的HTML語(yǔ)言中實(shí)現(xiàn)的。</p><p> JavaScript具有很多優(yōu)點(diǎn):JavaScript是一種腳本編寫(xiě)語(yǔ)言,它采用小程序段的方式實(shí)現(xiàn)編程,像其它腳本語(yǔ)言一樣JavaScript同樣已是一種解釋性語(yǔ)言,它提供了一個(gè)簡(jiǎn)易的開(kāi)發(fā)過(guò)程。JavaScript是動(dòng)態(tài)的,它可以直接對(duì)用戶(hù)或客戶(hù)輸入做出響應(yīng),無(wú)須經(jīng)過(guò)J
65、SP服務(wù)程序。它對(duì)用戶(hù)的反映響應(yīng),是采用以事件驅(qū)動(dòng)的方式進(jìn)行的。所謂事件驅(qū)動(dòng),就是指在主頁(yè)中執(zhí)行了某種操作所產(chǎn)生的動(dòng)作,就稱(chēng)為“事件”。比如按下鼠標(biāo)、移動(dòng)窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,可能會(huì)引起相應(yīng)的事件響應(yīng)。JavaScript是依賴(lài)于瀏覽器本身,與操作環(huán)境無(wú)關(guān),只要能運(yùn)行瀏覽器的計(jì)算機(jī),并支持JavaScript的瀏覽器就可以正確執(zhí)行。</p><p><b> (3) Java&
66、lt;/b></p><p> Java是一種面向?qū)ο笳Z(yǔ)言,Java語(yǔ)言類(lèi)似于C++語(yǔ)言,Java程序需要編譯,它被放置在Internet服務(wù)器上,當(dāng)用戶(hù)訪(fǎng)問(wèn)服務(wù)器時(shí),Java程序被下載到本地的用戶(hù)機(jī)上,由瀏覽器解釋運(yùn)行。實(shí)際上有兩種Java程序:一種Java應(yīng)用程序是一個(gè)完整的程序,如JSP瀏覽器。另一種Java小應(yīng)用程序是運(yùn)行于JSP瀏覽器中的一個(gè)程序。</p><p> 4
67、.2.2 數(shù)據(jù)庫(kù)聯(lián)接</p><p> JDBC技術(shù)是Java DataBase Connectivity的縮寫(xiě),它是SUN公司提供的一種支持基本SQL功能的通用的應(yīng)用程序接口(Application Programming Interface)。它由一組用Java語(yǔ)言編寫(xiě)的類(lèi)和接口組成。通過(guò)這些類(lèi)和接口,程序開(kāi)發(fā)人員可以在Java語(yǔ)言中方便地建立與數(shù)據(jù)庫(kù)的鏈接,通過(guò)執(zhí)行相應(yīng)SQL語(yǔ)句,完成對(duì)不同數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)。
68、因此,開(kāi)發(fā)人員使用JDBC可以不必編寫(xiě)一個(gè)應(yīng)用程序來(lái)訪(fǎng)問(wèn)Sybase數(shù)據(jù)庫(kù),又另外編寫(xiě)一個(gè)應(yīng)用程序去訪(fǎng)問(wèn)Oracle數(shù)據(jù)庫(kù),再寫(xiě)一個(gè)應(yīng)用程序訪(fǎng)問(wèn)Microsoft的SQL Server。不但如此,使用Java語(yǔ)言編寫(xiě)的應(yīng)用程序可以在任何支持Java的平臺(tái)上運(yùn)行,不必在不同的平臺(tái)上開(kāi)發(fā)不同的應(yīng)用程序。</p><p> 簡(jiǎn)單地說(shuō),JDBC能完成下列三件事:</p><p> (1) 同一
69、個(gè)數(shù)據(jù)庫(kù)建立連接;</p><p> (2) 向數(shù)據(jù)庫(kù)建立連接;</p><p> (3) 處理數(shù)據(jù)庫(kù)返回的結(jié)果。</p><p> 數(shù)據(jù)的應(yīng)用是程序成功的關(guān)鍵,在此項(xiàng)目中涉及到許多的數(shù)據(jù)庫(kù),根據(jù)之前的經(jīng)驗(yàn),數(shù)據(jù)庫(kù)最好有一個(gè)人進(jìn)行建立,這樣有利于程序的健壯性,在此過(guò)程中,我們需要就行數(shù)據(jù)相關(guān)屬性的設(shè)定,在進(jìn)行數(shù)據(jù)庫(kù)的鏈接時(shí)要進(jìn)行相關(guān)的語(yǔ)句搜素,進(jìn)行基本的語(yǔ)句搜
70、索。</p><p> 數(shù)據(jù)庫(kù)的應(yīng)用是十分廣泛的但是鏈接確是十分容易出錯(cuò)。</p><p> 但是我們?cè)谄綍r(shí)的實(shí)踐中有許多問(wèn)題值得注意。</p><p> 數(shù)據(jù)庫(kù)連接如圖4-1所示:</p><p> 圖4-1 數(shù)據(jù)庫(kù)連接</p><p> 關(guān)于數(shù)據(jù)庫(kù)的在本系統(tǒng)中的具體應(yīng)用代碼參見(jiàn)附錄II</p>
71、<p> 4.3 程序中遇到的問(wèn)題</p><p> JSP代碼中會(huì)存在許多問(wèn)題。</p><p> 4.3.1 關(guān)于JSP亂碼問(wèn)題的解決 </p><p> (1) 最基本的亂碼問(wèn)題。</p><p> 舉例:這個(gè)亂碼問(wèn)題是最簡(jiǎn)單的亂碼問(wèn)題,一般都會(huì)出現(xiàn),就是頁(yè)面編碼不一致導(dǎo)致的亂碼。</p>
72、<p> <%@ page language="java" pageEncoding="UTF-8"%></p><p> <%@ page contentType="text/html;charset=iso8859-1"%></p><p><b> <html>
73、</b></p><p><b> <head></b></p><p> <title>中文問(wèn)題</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></p>
74、;<p><b> </head></b></p><p><b> </head></b></p><p> <body>基金賬戶(hù)</body></p><p><b> </html></b></p>
75、<p> 以上有三個(gè)地方的編碼錯(cuò)誤。</p><p> 第一個(gè)地方的編碼格式為JSP文件的存儲(chǔ)格式。My Eclipse會(huì)根據(jù)這個(gè)編碼格式保存文件。并編譯JSP文件,包括里面的漢字。第二處編碼為解碼格式。因?yàn)榇鏋閁TF-8的文件被解碼為iso8859-1,這樣 如有中文肯定出亂碼。也就是必須一致。而第二處所在的這一行,可以沒(méi)有。缺省也是使用iso8859-1的編碼格式。所以如果沒(méi)有這一行的話(huà),“基金
76、賬戶(hù)”也會(huì)出現(xiàn)亂碼,必須一致才可以。 第三處編碼為控制瀏覽器的解碼方式。如果前面的解碼都一致并且無(wú)誤的話(huà),這個(gè)編碼格式?jīng)]有關(guān)系。有的網(wǎng)頁(yè)出現(xiàn)亂碼,就是因?yàn)闉g覽器不能確定使用哪種編碼格式。因?yàn)轫?yè)面有時(shí)候會(huì)嵌入頁(yè)面,導(dǎo)致瀏覽器混淆了編碼格式,出現(xiàn)了亂碼。</p><p> (2) 表單使用Post方式提交后接收到的亂碼問(wèn)題</p><p> 這個(gè)問(wèn)題也是一個(gè)常見(jiàn)的問(wèn)題。這個(gè)亂碼
77、也是tomcat的內(nèi)部編碼格式iso8859-1在搗亂,也就是說(shuō)post提交時(shí),如果沒(méi)有設(shè)置提交的編碼格式,則會(huì)以iso8859-1方式進(jìn)行提交,接受的JSP卻以u(píng)tf-8的方式接受導(dǎo)致亂碼,接受參數(shù)時(shí)進(jìn)行編碼轉(zhuǎn)換 Stringstr=newString(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8&q
78、uot;);這樣的話(huà),每一個(gè)參數(shù)都必須這樣進(jìn)行轉(zhuǎn)碼。很麻煩。但確實(shí)可以拿到漢字。在請(qǐng)求頁(yè)面上開(kāi)始處,執(zhí)行請(qǐng)求的編碼代碼, request.setCharacterEncoding("UTF-8"),把提交內(nèi)容的字符集設(shè)為UTF-8。這樣的話(huà),接受此參數(shù)的頁(yè)面就不必在轉(zhuǎn)碼了。直接使用String str = request.getParameter ("something");即可得到漢字參數(shù)。但每
79、頁(yè)都需要執(zhí)行這句話(huà)。這個(gè)方法也就對(duì)post提交的有效果,對(duì)于get提交和上傳文件時(shí)的enctype="multipart/form-data"是無(wú)效的。稍后下面單獨(dú)對(duì)這個(gè)兩個(gè)的亂碼情況</p><p> (3) 表單get提交方式的亂碼處理方式。</p><p> 如果使用get方式提交中文,接受參數(shù)的頁(yè)面也會(huì)出現(xiàn)亂碼,這個(gè)亂碼的原因也是tomcat的內(nèi)部編碼格式i
80、so8859-1導(dǎo)致。</p><p> Tomcat會(huì)以get的缺省編碼方式iso8859-1對(duì)漢字進(jìn)行編碼,編碼后追加到url,導(dǎo)致接受頁(yè)面得到的參數(shù)為亂碼。解決辦法:</p><p> 方案一:使用上例中的第一種方式,對(duì)接受到的字符進(jìn)行解碼,再轉(zhuǎn)碼。方案二:Get走的是url提交,而在進(jìn)入url之前已經(jīng)進(jìn)行了iso8859-1的編碼處理。要想影響這個(gè)編碼則需要server.xml
81、的Connector節(jié)點(diǎn)增加useBodyEncodingForURI="true"屬性配置,即可控制tomcat對(duì)get方式的漢字編碼方式,上面這個(gè)屬性控制get提交也是用request.setCharacterEncoding ("UTF-8")所設(shè)置的編碼格式進(jìn)行編碼。所以自動(dòng)編碼為utf-8,接受頁(yè)面正常接受就可以了。但我認(rèn)為真正的編碼過(guò)程是,tomcat又要根據(jù)<Connector
82、port="8080"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"enableLookups="false"redirectPort="8443"acceptCount="100"debug="0"connect
83、ionTimeout="20000"useBodyEncodingForURI="true"disableUploadTimeou</p><p> (4) 上傳文件時(shí)的亂碼解決</p><p> 上傳文件時(shí),form表單設(shè)置的都是enctype="multipart/form-data"。這種方式以流方式提交文件。如果使用a
84、pach的上傳組件,會(huì)發(fā)現(xiàn)有很多亂碼想象。這是因?yàn)閍pach的先期commons-fileupload.jar有bug,取出漢字后進(jìn)行解碼,因?yàn)檫@種方式提交,編碼又自動(dòng)使用的是tomcat缺省編碼格式iso-8859-1。但出現(xiàn)的亂碼問(wèn)題是:句號(hào),逗號(hào),等特殊符號(hào)變成了亂碼,漢字如果數(shù)量為奇數(shù),則會(huì)出現(xiàn)亂碼,偶數(shù)則解析正常。 </p><p> 解決方式:下載commons-
85、fileupload-1.1.1.jar 這個(gè)版本的jar已經(jīng)解決了這些bug。但是取出內(nèi)容時(shí)仍然需要對(duì)取出的字符進(jìn)行從iso8859-1到utf-8轉(zhuǎn)碼。已經(jīng)能得到正常所有漢字以及字符。5 Java代碼關(guān)于url請(qǐng)求,接受參數(shù)的亂碼url的編碼格式,取決于上面所說(shuō)的URIEncoding=”UTF-8"。如果設(shè)定了這個(gè)編碼格式,則意味著所有到url的漢字參數(shù),都必須進(jìn)行編碼才可以。否則得到的漢字參數(shù)值都是亂碼,例如一個(gè)鏈接
86、Response.sendDerect(“/a.JSP?name=基金賬戶(hù)”);而在a.JSP里面直接使用String name = request.getParameter("name");得到的就是亂碼。因?yàn)橐?guī)定了必須是utf-8才可以,所以,這個(gè)轉(zhuǎn)向應(yīng)該這樣寫(xiě):Response.sendDerect(“/a.JSP?name=URLEncode.encode(“基金賬戶(hù)”,“utf-8”));才可以。如果不設(shè)置
87、這個(gè)參數(shù)URIEncoding=“UTF-8”,會(huì)怎么樣呢? 不設(shè)置則就使用了缺省的編碼格式iso8859-1。問(wèn)題又出</p><p> 5 程序的測(cè)試與維護(hù)</p><p> 5.1測(cè)試的重要性及目的</p><p> 軟件測(cè)試和維護(hù)分為以下幾個(gè)方面。</p><p> 5.1.1 測(cè)試的重要性</p><p&
88、gt; 軟件的測(cè)試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測(cè)試學(xué)僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶(hù)使用之前保證軟件質(zhì)量的重要手段近來(lái),軟件工程界趨向于一種新的觀點(diǎn),即認(rèn)為軟件生命周期每一階段中都應(yīng)包含測(cè)試,從而檢驗(yàn)本階段的成果是否接近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯(cuò)誤并加以修正如果不在早期階段進(jìn)行測(cè)試,錯(cuò)誤的延時(shí)擴(kuò)散常常會(huì)導(dǎo)致最后成品測(cè)試的巨大困難事實(shí)上,對(duì)于軟件來(lái)講,不論采用什么技術(shù)和什么方法,軟件中仍然會(huì)有錯(cuò)。
89、采用新的語(yǔ)言、先進(jìn)的開(kāi)發(fā)方式、完善的開(kāi)發(fā)過(guò)程,可以減少錯(cuò)誤的引入,但是不可能完全杜絕軟件中的錯(cuò)誤,這些引入的錯(cuò)誤需要測(cè)試來(lái)找出,軟件中的錯(cuò)誤密度也需要測(cè)試來(lái)進(jìn)行估計(jì)。測(cè)試是所有工程學(xué)科的基本組成單元,是軟件開(kāi)發(fā)的重要部分。自有程序設(shè)計(jì)的那天起測(cè)試就一直伴隨著。統(tǒng)計(jì)表明,在典型的軟件開(kāi)發(fā)項(xiàng)目中,軟件測(cè)試工作量往往占軟件開(kāi)發(fā)總工作量的40%以上。而在軟件開(kāi)發(fā)的總成本中,用在測(cè)試上的開(kāi)銷(xiāo)要占30%到50%。如果把維護(hù)階段也考慮在內(nèi),討論整個(gè)軟
90、件生存期時(shí),測(cè)試的成本比例也許會(huì)有所降低,但實(shí)際上維護(hù)工作相當(dāng)于二次開(kāi)發(fā),乃至多次開(kāi)發(fā),其中必定還包含有許多測(cè)試工作。 </p><p> 在實(shí)踐中,軟件測(cè)試的困難常常使人望而卻步或敷衍了事,這是由于對(duì)測(cè)試仍然存在一些不正確的看法和錯(cuò)誤的態(tài)度,這包括:認(rèn)為測(cè)試工作不如設(shè)計(jì)和編碼那樣容易取得進(jìn)展難以給測(cè)試人員某種成就感;以發(fā)現(xiàn)軟件錯(cuò)誤為目標(biāo)的測(cè)試是非建設(shè)性的,甚至是破壞性的,測(cè)試中發(fā)現(xiàn)錯(cuò)位是對(duì)責(zé)任者工作的一種否定
91、;測(cè)試工作枯燥無(wú)味,不能引起人們的興趣;測(cè)試工作是艱苦而細(xì)致的工作;這些觀點(diǎn)對(duì)軟件測(cè)試工作是極為不利的,必須澄清認(rèn)識(shí)、端正態(tài)度,才可能提高軟件產(chǎn)品的質(zhì)量。 </p><p> 5.1.2 測(cè)試的目的 </p><p> 如果測(cè)試的目的是為了盡可能多地找出錯(cuò)誤,那么測(cè)試就應(yīng)該直接針對(duì)軟件比較復(fù)雜的部分或是以前出錯(cuò)比較多的位置。 </p><p> (1) 軟件測(cè)
92、試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程;</p><p> (2) 測(cè)試是為了證明程序有錯(cuò),而不是明程序無(wú)錯(cuò)誤;</p><p> (3) 一個(gè)好的測(cè)試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤;</p><p> (4) 一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。 </p><p> 這種觀點(diǎn)可以提醒人們測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示
93、軟件的正確功能。但是僅憑字面意思理解這一觀點(diǎn)可能會(huì)產(chǎn)生誤導(dǎo),認(rèn)為發(fā)現(xiàn)錯(cuò)誤是軟件測(cè)試的唯一目的,但是事實(shí)并非如此。 </p><p> 首先,測(cè)試并不僅僅是為了要找出錯(cuò)誤。通過(guò)分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的分布特征,可以幫助項(xiàng)目管理者發(fā)現(xiàn)當(dāng)前所采用的軟件過(guò)程的缺陷,以便改進(jìn)。同時(shí),這種分析也能幫助我們?cè)O(shè)計(jì)出有針對(duì)性地檢測(cè)方法,改善測(cè)試的有效性。其次,沒(méi)有發(fā)現(xiàn)錯(cuò)的測(cè)試也是有價(jià)值的,完整的測(cè)試是評(píng)定測(cè)試質(zhì)量的一種方法。&
94、lt;/p><p><b> 5.2 測(cè)試的步驟</b></p><p> 與開(kāi)發(fā)過(guò)程類(lèi)似,測(cè)試過(guò)程也必須分步驟進(jìn)行,每個(gè)步驟在邏輯上是前一個(gè)步驟的繼續(xù)。大型軟件系統(tǒng)通常由若干個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)又由若干個(gè)模塊組成。因此,大型軟件系統(tǒng)的測(cè)試基本上由下述幾個(gè)步驟組成:</p><p> (1) 模塊測(cè)試 在這個(gè)測(cè)試步驟中所發(fā)現(xiàn)的往往是編碼和
95、詳細(xì)設(shè)計(jì)的錯(cuò)誤。</p><p> (2) 系統(tǒng)測(cè)試 在這個(gè)測(cè)試步驟中發(fā)現(xiàn)的往往是軟件設(shè)計(jì)中的錯(cuò)誤,也可能發(fā)現(xiàn)需求說(shuō)明中的錯(cuò)誤。</p><p> (3) 驗(yàn)收測(cè)試 在這個(gè)測(cè)試步驟中發(fā)現(xiàn)的往往是系統(tǒng)需求說(shuō)明書(shū)中的錯(cuò)誤。</p><p> 5.3 測(cè)試的主要內(nèi)容</p><p> 為了保證測(cè)試的質(zhì)量,將測(cè)試過(guò)程分成幾個(gè)階段,即:代碼審查
96、、單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。 </p><p><b> (1) 單元測(cè)試 </b></p><p> 單元測(cè)試集中在檢查軟件設(shè)計(jì)的最小單位—模塊上,通過(guò)測(cè)試發(fā)現(xiàn)實(shí)現(xiàn)該模塊的實(shí)際功能與定義該模塊的功能說(shuō)明不符合的情況,以及編碼的錯(cuò)誤。 </p><p><b> (2) 集成測(cè)試 </b></p&
97、gt;<p> 集成測(cè)試是將模塊按照設(shè)計(jì)要求組裝起來(lái)同時(shí)進(jìn)行測(cè)試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問(wèn)題。如一個(gè)模塊與另一個(gè)模塊可能有由于疏忽的問(wèn)題而造成有害影響;把子功能組合起來(lái)可能不產(chǎn)生預(yù)期的主功能;個(gè)別看起來(lái)是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯(cuò)誤等。 </p><p><b> (3) 確認(rèn)測(cè)試 </b></p><p>
98、確認(rèn)測(cè)試的目的是向未來(lái)的用戶(hù)表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測(cè)試后,已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接口錯(cuò)誤也已經(jīng)基本排除了,接著就應(yīng)該進(jìn)一步驗(yàn)證軟件的有效性,這就是確認(rèn)測(cè)試的任務(wù),即軟件的功能和性能如同用戶(hù)所合理期待的那樣。 </p><p><b> (4) 系統(tǒng)測(cè)試 </b></p><p> 軟件開(kāi)發(fā)完成以后,最終還要與系統(tǒng)中其他部
99、分配套運(yùn)行,進(jìn)行系統(tǒng)測(cè)試。包括恢復(fù)測(cè)試、安全測(cè)試、強(qiáng)度測(cè)試和性能測(cè)試等。單獨(dú)對(duì)系統(tǒng)的測(cè)試主要從以下幾入手:</p><p> 功能測(cè)試:測(cè)試是否滿(mǎn)足開(kāi)發(fā)要求,是否提供設(shè)計(jì)所描述的功能,是否用戶(hù)的需求都得到滿(mǎn)足。功能測(cè)試是系統(tǒng)測(cè)試最常用和必須的測(cè)試,通常還會(huì)以正式的軟件說(shuō)明書(shū)為測(cè)試標(biāo)準(zhǔn)。</p><p> 強(qiáng)度測(cè)試及性能測(cè)試:測(cè)試系統(tǒng)能力最高實(shí)際限度,即軟件在一些超負(fù)荷情況下功能實(shí)現(xiàn)的情
100、況。</p><p> 安全測(cè)試:驗(yàn)證安裝在系統(tǒng)內(nèi)的保護(hù)機(jī)構(gòu)確實(shí)能夠?qū)ο到y(tǒng)進(jìn)行保護(hù),使之不受各種非常的干擾。針對(duì)本系統(tǒng)主要是對(duì)權(quán)限系統(tǒng)的測(cè)試和對(duì)無(wú)效數(shù)據(jù)、錯(cuò)數(shù)據(jù)、和非法數(shù)據(jù)干擾的能力的測(cè)試。</p><p> 經(jīng)過(guò)上述的測(cè)試過(guò)程對(duì)軟件進(jìn)行測(cè)試后,軟件基本滿(mǎn)足開(kāi)發(fā)的要求,測(cè)試宣告結(jié)束。</p><p><b> 6 系統(tǒng)的維護(hù)</b><
101、;/p><p> 本項(xiàng)目的運(yùn)行主要包括以下內(nèi)容:</p><p> 啟動(dòng)Tomcat 應(yīng)用服務(wù)器后,打開(kāi)Internet Explorer,在URL地址中輸入http://localhost:8080/index.jsp,即可運(yùn)行所寫(xiě)的JSP頁(yè)。也可在MyEclipse環(huán)境下將工程屬性中的Server改為T(mén)omcat,按照上面的部署過(guò)程部署后,直接運(yùn)行JSP頁(yè)面即可。</p>
102、<p> 系統(tǒng)的維護(hù)主要包括以下內(nèi)容:</p><p> (1) 權(quán)限維護(hù),管理員需要對(duì)用戶(hù)的用戶(hù)名、密碼和權(quán)限進(jìn)行維護(hù),給每名員工分配享用的用戶(hù)名和密碼,確定操作級(jí)別。</p><p> (2) 數(shù)據(jù)庫(kù)維護(hù),在日常運(yùn)行中要不斷對(duì)數(shù)據(jù)庫(kù)管理及其表進(jìn)行修改,對(duì)無(wú)用的表及表中的信息進(jìn)行刪除處理。這樣確保系統(tǒng)能夠正常,快速地運(yùn)</p><p><b
103、> 附 錄Ⅰ</b></p><p><b> JSP頁(yè)面</b></p><p> <%@page contentType="text/html;charset=utf-8" language="java"%></p><p> <%@taglib uri=&
104、quot;http://java.sun.com/JSP/jstl/core" prefix="c"%></p><p> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi
105、tional.dtd"></p><p> <html xmlns="http://www.w3.org/1999/xhtml"></p><p><b> <head></b></p><p> <meta http-equiv="Content-Type&qu
106、ot; content="text/html; charset=gb2312" /></p><p> <title>無(wú)標(biāo)題文檔</title></p><p> <style type="text/css"></p><p> body,td,th {</p>&
107、lt;p> font-size: 18px;</p><p> color: #000000;</p><p><b> }</b></p><p><b> body {</b></p><p> background-color: #999999;</p><
108、p> background-image: url(images/image1.jpg);</p><p><b> }</b></p><p> </style></head></p><p><b> <body></b></p><p><
109、b> <tr></tr></b></p><p><b> <hr \></b></p><p> <form id="form1" name="form1" method="post" action="deleteClient&qu
110、ot;></p><p> <table width="168%" border="6" align="center"></p><p><b> <tr></b></p><p> <td width="11%">&
111、lt;div align="center"><strong>客戶(hù)編號(hào)</strong></div></td></p><p> <td width="13%"><div align="center"><strong>客戶(hù)姓名</strong></
112、div></td></p><p> <td width="11%"><div align="center"><strong>身份證號(hào)碼</strong></div></td></p><p> <td width="8%">
113、<div align="center"><strong>性別</strong></div></td></p><p> <td width="10%"><div align="center"><strong>電話(huà)號(hào)碼</strong></d
114、iv></td></p><p> <td width="11%"><div align="center"><strong>詳細(xì)地址</strong></div></td></p><p> <td width="10%">&
115、lt;div align="center"><strong>E-mail</strong></div></td></p><p> <td width="10%"><div align="center"><strong>愛(ài)好</strong></
116、div></td></p><p> <td width="13%"><div align="center"><strong>創(chuàng)建日期</strong></div></td></p><p> <td width="3%">&
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于jspjava圖書(shū)管理系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)
- 基于jspjava論壇設(shè)計(jì)和實(shí)現(xiàn)
- 基于jspjava超市管理系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava工資管理系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava購(gòu)物網(wǎng)站設(shè)計(jì)和實(shí)現(xiàn)
- 基于jspjava信息網(wǎng)設(shè)計(jì)和實(shí)現(xiàn)
- 基于jspjava電子商城設(shè)計(jì)和實(shí)現(xiàn)
- 基于jspjava網(wǎng)上購(gòu)物系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava新聞發(fā)布系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava網(wǎng)絡(luò)教學(xué)平臺(tái)系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava網(wǎng)上花店設(shè)計(jì)和開(kāi)發(fā)
- 基于jspjava的企業(yè)資源管理系統(tǒng)
- 基于IOS的基金管理系統(tǒng)的基金交易子系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基金投資交易管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 基金公司客戶(hù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基金組合管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基金投資交易管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于.net的項(xiàng)目管理系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)
- 基于java藥品管理系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)
- 匯豐基金公司CRM管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論