網(wǎng)上購物系統(tǒng)的設計與實現(xiàn)畢業(yè)論文
《網(wǎng)上購物系統(tǒng)的設計與實現(xiàn)畢業(yè)論文》由會員分享,可在線閱讀,更多相關《網(wǎng)上購物系統(tǒng)的設計與實現(xiàn)畢業(yè)論文(47頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 畢業(yè)設計(論文) 網(wǎng)上購物系統(tǒng)的設計與實現(xiàn) 院 別 計算機與通信工程學院 專業(yè)名稱 計算機科學與技術 班級學號 學生姓名 指導教師 2013年6月 10 日 東北大學秦皇島分校畢業(yè)設計(論文) 第 42 頁 網(wǎng)上購物系統(tǒng)的設計與實現(xiàn) 摘 要 隨著互聯(lián)網(wǎng)絡的發(fā)展,網(wǎng)上購物越來越為人們所關注。網(wǎng)上購物給用戶提供方便的購買途徑,只要簡單的網(wǎng)絡操作,足不出戶,即可送貨上門,種類齊全,并具有完善的售后服務。同時,在像當當網(wǎng)這樣的地方購買商品,都能實現(xiàn)送貨上門,貨到付款,使
2、網(wǎng)上購物的安全性得到了保障。隨著網(wǎng)絡購物安全性和售后服務的加強,網(wǎng)上購物系統(tǒng)的發(fā)展對提高人們生活水平方面具有十分重要的意義。 本文闡述了網(wǎng)上購物系統(tǒng)的開發(fā)與設計。設計采用現(xiàn)在比較流行的JSP網(wǎng)站開發(fā)技術,并考慮到網(wǎng)站所處理的數(shù)據(jù)的結(jié)構(gòu)特點及所學到的知識,應用MySQL數(shù)據(jù)庫系統(tǒng)作為網(wǎng)站的后臺數(shù)據(jù)庫。系統(tǒng)實現(xiàn)了網(wǎng)站的基本功能,包括客戶的注冊登錄、瀏覽網(wǎng)站信息、信息查詢、購物并填寫訂單。在頁面設計與制作中,對于頁面的基本格式,使用HTML語言寫出框架,然后用MyEclipse在框架里面做詳細的設計。制作出了前臺信息發(fā)布網(wǎng)站和后臺管理維護系統(tǒng)。 這個網(wǎng)上購物系統(tǒng)能幫助用戶對前臺網(wǎng)站進行日常管理和
3、信息發(fā)布;并具有占用系統(tǒng)資源少、信息量大、站點維護方便、便于擴充和更新、易于繼承和保護歷史數(shù)據(jù)等優(yōu)點,同時此系統(tǒng)可以克服傳統(tǒng)銷售中地域、廣告宣傳、人力資源不足等限制,能很好地適應網(wǎng)上銷售需求。 關鍵詞:網(wǎng)上購物;JSP;MyEclipse The design and implementation of online shopping system
4、 Abstract With the development of Internet, online shopping is more and more attention by people. Online shopping the purchase way to provide users with convenient, as long as the simple network operation, never leave home, can be door-to-door deliv
5、ery, variety complete, and has perfect after-sales service. At the same time, in places like dangdang to buy goods, can realize door-to-door delivery, delivery payment, to guarantee the security of online shopping. The strengthening of security and after-sales service as the network shopping, online
6、 shopping system development to improve peoples living standard has the very vital significance. This article elaborated the on-line shopping system development and design. Design USES now more popular JSP web development technology, and processing of data by considering the site structure and lear
7、ned knowledge, using MySQL database system as background database website. System has realized the basic function of website, including customer registered login, information query, browse the web site information, shopping, and fill in the order. In the page design and production, for the basic for
8、mat of the page, use HTML language to write framework, then use MyEclipse in framework to do detailed design. Made out of the front desk information release site and background management maintenance system. The online shopping system can help users to the front desk for daily management and inform
9、ation release; And occupy less system resources, informative, site maintenance convenient, easy to expand and update, easy to inherit and protect the historical data, etc, at the same time, this system can overcome the traditional sales in the region, advertising, human resources, lack of restrictio
10、ns, can well to meet the needs of online sales. Keywords: online shopping; JSP; MyEclipse 目 錄 1 緒 論 1 1.1 課題的背景、目的與意義 1 1.2 國內(nèi)外現(xiàn)狀 1 1.3 論文所做工作及結(jié)構(gòu) 2 2 系統(tǒng)相關技術簡介 4 2.1 JSP技術 4 2.2 MySQL 6 2.3 Tomcat 7 2.4 連接數(shù)據(jù)庫與JavaScript 8 2.5 CSS層 8 3 系統(tǒng)分析 9 3.1功能需求分析 9 3.2 可行性分析 10 3.2.
11、1技術可行性分析 10 3.2.2經(jīng)濟可行性分析 10 3.2.3 社會因素可行性分析 10 3.3性能需求分析 11 3.4 運行環(huán)境及開發(fā)工具 11 4 系統(tǒng)總體設計 12 4.1 系統(tǒng)結(jié)構(gòu)設計 12 4.2 功能模塊設計 12 4.2.1用戶管理 12 4.2.2 管理員管理 13 4.2.3 購物車管理 13 4.3 數(shù)據(jù)庫設計 14 4.3.1 E-R圖 14 4.3.2基本表設計 15 5 系統(tǒng)實現(xiàn) 18 5.1 系統(tǒng)頁面的實現(xiàn) 18 5.2 前臺功能模塊實現(xiàn) 18 5.2.1用戶管理模塊 19 5.2.2購物車模塊 22 5.2.3 訂
12、單查詢模塊 25 5.3 后臺功能模塊的實現(xiàn) 25 5.3.1用戶管理模塊 26 5.3.2添加商品模塊 26 5.3.3訂單信息管理模塊 27 5.3.4查詢用戶信息模塊 28 6 系統(tǒng)調(diào)試與實施 30 6.1 系統(tǒng)測試原理及測試準則 30 6.1.1系統(tǒng)測試原理 30 6.1.2系統(tǒng)測試原則 31 6.2 系統(tǒng)測試的方法 31 6.3 本系統(tǒng)的測試 32 結(jié) 論 34 致 謝 35 參考文獻 36 附 錄 37 IV- 1 緒 論 1.1 課題的背景、目的與意義 計算機網(wǎng)絡的出現(xiàn)帶給了世界巨大的變化,從過去只面向?qū)I(yè)部門的
13、信息傳送擴展到現(xiàn)代生活的各個角落,它為世界的發(fā)展和變革做出了無可估量的貢獻。特別是在二十世紀九十年代,美國政府提出“信息高速公路”計劃并付諸于實施以后,網(wǎng)絡漸漸的從人們極少了解的領域來到了全世界平常人的生活中。隨著計算機網(wǎng)絡的日益普及,電子商務已然已經(jīng)成為了一種潮流,網(wǎng)上購物也是人人皆知的一種購物方式。網(wǎng)上購物有很多優(yōu)點,首先,不管是企業(yè)還是客戶都節(jié)約了時間和成本,另外也方便進行跨區(qū)域性的交易,再加上自己身為當代大學生,深知校園生活中網(wǎng)上購物的普遍以及快捷,因此,我選擇了網(wǎng)上購物這個課題作為自己的畢設,此系統(tǒng)成本比較低,而且功能和視覺方面能夠讓客戶一目了然,很快得就能上手,在最短的時間內(nèi)完成選
14、、購、定的流程。 作為信息傳輸?shù)拿浇?,它的高速,海量,及時與可接受的可靠性滿足了現(xiàn)代人們對于需求的渴望?,F(xiàn)在的網(wǎng)絡對于人們來說,已經(jīng)可以不再是單單獲得信息的意義,更反應了現(xiàn)代人生活的理念,更為重要的是成為企業(yè)與政府傳達思想,介紹自身的平臺。 1.2 國內(nèi)外現(xiàn)狀 伴隨著Internet的蓬勃發(fā)展,網(wǎng)絡購物中心作為電子商務的一種形式正以其高效、低成本的優(yōu)勢,逐步成為新興的經(jīng)營模式和理念,人們已不再滿足于信息瀏覽和發(fā)布,而是渴望著能夠充分享受網(wǎng)絡所帶來的更多的便利。的確,客戶足不出戶便可以方便快捷的選購自己喜歡的商品,這正是網(wǎng)絡購物中心為客戶帶來的好處。 敏銳的網(wǎng)絡商家當然不會錯過這樣絕好的
15、機會,越來越多的網(wǎng)站投身到提供網(wǎng)絡購物服務的行列中來,一個基于Internet的全球電子商務框架正在形成。 在美、日等信息化程度較高的國家和地區(qū),網(wǎng)絡商店發(fā)展速度迅猛,美國的世界級超一流的零售商,如沃爾瑪、家庭倉儲、科羅格、J.C培尼等紛紛擠身于網(wǎng)絡經(jīng)商的行列。調(diào)查表明:美國的家庭已越來越習慣于在家中從網(wǎng)上購物。 在我國,網(wǎng)上購物從無到有也不過短短幾年時間。我國第一家網(wǎng)上購物發(fā)生在1996年,燕莎友誼商場首次通過網(wǎng)上商城售出一個景泰藍,雖然貨款的支付不是在網(wǎng)上進行的,但這畢竟為我國零售業(yè)奏出了網(wǎng)上購物的先聲。根據(jù)CNNIC的統(tǒng)計結(jié)果,截止2004年1月中國有互聯(lián)網(wǎng)用戶7950萬人,而又有4
16、0.7%以上的網(wǎng)民在過去的一年里有過網(wǎng)上購物經(jīng)歷,這就說明中國有網(wǎng)上購物的用戶達是3235.7萬人,并且這一數(shù)字還在以17%左右的速度增長,到2006年中國網(wǎng)上購物用戶將達到6962萬人,這說明在中國發(fā)展網(wǎng)上購物具有良好的群眾基礎,網(wǎng)上購物方式日趨被大家所接受。 在最近一段時間里,我也查了一些關于網(wǎng)上購物的信息。有60.4%的網(wǎng)站屬于企業(yè)網(wǎng)站,可見如今企業(yè)都將網(wǎng)站作為推廣自己的重要手段。其次是個人網(wǎng)站。而政府部門的網(wǎng)站占到4.4%。 但是,另有調(diào)查顯示,將近75%的企業(yè)的網(wǎng)站每天的點擊率在200次以下,更有51.5%的企業(yè)網(wǎng)站的點擊率不足50次,僅有8.6%的企業(yè)網(wǎng)站的點擊率每天超過100
17、0次。這說明,做好一個網(wǎng)站,做出網(wǎng)站的特色把信息與新聞相結(jié)合來吸引人觀看是一個非常重要的問題。 另外,作為信息、新聞傳播的傳統(tǒng)模式的報刊業(yè)也將目光和精力投入到網(wǎng)絡網(wǎng)站上來。毫無疑問,高速,海量的信息傳輸對報刊業(yè)也是巨大的刺激。2005第五屆中國網(wǎng)絡媒體論壇中提出到“順應數(shù)字化潮流,地方報業(yè)踏上網(wǎng)上之路”。 因此,設計一個具有電子商務功能的企業(yè)網(wǎng)站具有非常好的開發(fā)與應用前景。 1.3 論文所做工作及結(jié)構(gòu) 這次設計實現(xiàn)了一個網(wǎng)上購物網(wǎng)站。開發(fā)出的網(wǎng)絡購物中心系統(tǒng)基于MySQL數(shù)據(jù)庫,采用國際先進的JSP進行開發(fā),具有很高的穩(wěn)定性和安全性。這個網(wǎng)上購物系統(tǒng)所需要的功能從用戶角度進行劃分,可以
18、分為前臺用戶功能和后臺管理功能。用戶功能主要提供給購物的用戶使用,包括用戶的注冊、登錄,購物車,查看訂單等;后臺管理功能主要提供給系統(tǒng)的管理人員使用,包括對用戶、商品、訂單的管理。用戶注冊后,登陸網(wǎng)站的用戶可以在線查看、訂購產(chǎn)品,并可在論壇中與其他用戶進行交流及提出意見等。這些部分用JSP設計頁面及連接,使用數(shù)據(jù)庫來建立相關的表,以便于對其進行查看、修改或刪除。在網(wǎng)站設計中,管理員完成對網(wǎng)站的維護與管理的工作。使用數(shù)據(jù)庫中權限的功能對管理員設置權限,管理員可以對商品信息進行新增,修改及刪除,也可以對訂單信息進行處理,同時管理員也可以對用戶信息進行管理。 本文分為六章,通過對這個網(wǎng)站的分析、設
19、計與實現(xiàn)的過程的全面介紹來展示系統(tǒng)的全部特性。第一章緒論描述了課題的背景、目的與意義,介紹了國內(nèi)外現(xiàn)狀,進而總結(jié)出此次研究工作的內(nèi)容。第二章是在系統(tǒng)設計中的一些相關技術簡介。第三章系統(tǒng)分析首先從幾個角度分析了系統(tǒng)開發(fā)的可行性。闡述了系統(tǒng)在實際應用中的價值,然后進行了需求分析。第四章的系統(tǒng)總體設計在明確了系統(tǒng)設計原則下,進行了功能模塊設計。接著進行數(shù)據(jù)庫設計,首先針對系統(tǒng)中的數(shù)據(jù)設計出實體間的關系,然后描述了數(shù)據(jù)庫中基本表的設計。第五章的系統(tǒng)實現(xiàn)闡述了系統(tǒng)頁面及其邏輯功能的實現(xiàn),重點描述了前臺與后臺的各個功能模塊的實現(xiàn)過程,對主要的原理和技術進行了詳細的說明,并列出了一些典型的邏輯的程序流程圖進
20、行說明。第六章系統(tǒng)調(diào)試與實施介紹了系統(tǒng)的各項調(diào)試指標,分析了調(diào)試的過程和結(jié)果。最后是參考文獻和致謝。參考文獻中列出了本次畢業(yè)設計中所用到的參考資料和文中所引用到的定義與解釋的出處。致謝中對在本次畢業(yè)設計中給予指導和幫助的老師和同學表示由衷的感謝。 2 系統(tǒng)相關技術簡介 2.1 JSP技術 本系統(tǒng)采用JSP技術開發(fā),JSP是Sun屬下JavaSoft公司推出的技術,使用的Java語言是ASP、PHP和JSP三者中最新的技術。它以JavaServlet技術為基礎,又在許多方面作了改進,并
21、且充分借鑒了ASP和PHP一些合理的地方。JSP技術是以JAVA語言為基礎的,可以使用JavaBeans組件和自定義標簽,因此具有良好的擴展性。Jsp有九個內(nèi)置對象:request, response, session, application, out, page, config, exception, pagecontex, request 對象是 javax.servlet.httpServletRequest類型的對象。 該對象代表了客戶端的請求信息,主要用于接受通過HTTP協(xié)議傳送到服務器的數(shù)據(jù)。(包括頭信息、系統(tǒng)信息、請求方式以及請求參數(shù)等)。request對象的作用域為一次請求
22、。 response 代表的是對客戶端的響應,主要是將JSP容器處理過的對象傳回到客戶端。response對象也具有作用域,它只在JSP頁面內(nèi)有效。 Session:從一個客戶打開瀏覽器并連接到服務器開始,到客戶關閉瀏覽器離開這個服務器結(jié)束,被稱為一個會話。當一個客戶訪問一個服務器時,可能會在這個服務器的幾個頁面之間反復連接,反復刷新一個頁面,服務器應當通過某種辦法知道這是同一個客戶,這就需要session對象。session對象的ID:當一個客戶首次訪問服務器上的一個JSP頁面時,JSP引擎產(chǎn)生一個session對象,同時分配一個String類型的ID號,JSP引擎同時將這個ID號發(fā)送到
23、客戶端,存放在Cookie中,這樣session對象和客戶之間就建立了一一對應的關系。當客戶再訪問連接該服務器的其他頁面時,不再分配給客戶新的session對象,直到客戶關閉瀏覽器后,服務器端該客戶的session對象才取消,并且和客戶的會話對應關系消失。當客戶重新打開瀏覽器再連接到該服務器時,服務器為該客戶再創(chuàng)建一個新的session對象。session對象存在一定時間過期問題,所以存在session中的名值對會在一定時間后失去,可以通過更改session有效時間來避免這種情況。同時編程時盡量避免將大量有效信息存儲在session中,request是一個不錯的替代對象。 服務器啟動后就產(chǎn)生
24、了這個application對象,當客戶在所訪問的網(wǎng)站的各個頁面之間瀏覽時,這個application對象都是同一個,直到服務器關閉。但是與session不同的是,所有客戶的application對象都是同一個,即所有客戶共享這個內(nèi)置的application對象。 application對象常用方法:(1)public void setAttribute(String key,Object obj): 將參數(shù)Object指定的對象obj添加到application對象中,并為添加的對象指定一個索引關鍵字。(2)public Object getAttribute(String key): 獲
25、取application對象中含有關鍵字的對象。 out 對象用于在Web瀏覽器內(nèi)輸出信息,并且管理應用服務器上的輸出緩沖區(qū)。在使用 out 對象輸出數(shù)據(jù)時,可以對數(shù)據(jù)緩沖區(qū)進行操作,及時清除緩沖區(qū)中的殘余數(shù)據(jù),為其他的輸出讓出緩沖空間。待數(shù)據(jù)輸出完畢后,要及時關閉輸出流。 page 對象代表JSP本身,只有在JSP頁面內(nèi)才是合法的。 page隱含對象本質(zhì)上包含當前 Servlet接口引用的變量,類似于Java編程中的 this 指針。 config 對象的主要作用是取得服務器的配置信息。通過 pageContext對象的 getServletConfig() 方法可以獲取一個confi
26、g對象。當一個Servlet 初始化時,容器把某些信息通過 config對象傳遞給這個 Servlet。 開發(fā)者可以在web.xml 文件中為應用程序環(huán)境中的Servlet程序和JSP頁面提供初始化參數(shù)。 java.lang.Throwable 的實例,該實例代表其他頁面中的異常和錯誤。只有當頁面是錯誤處理頁面,即編譯指令page 的isErrorPage 屬性為true 時,該對象才可以使用。常用的方法有getMessage()和printStackTrace()等。 pageContext 對象的作用是取得任何范圍的參數(shù),通過它可以獲取 JSP頁面的out、request、repons
27、e、session、application 等對象。pageContext對象的創(chuàng)建和初始化都是由容器來完成的,在JSP頁面中可以直接使用 pageContext對象。 總的來說,JSP已成為目前主流的動態(tài)網(wǎng)頁開發(fā)技術之一。JSP的優(yōu)點如下: (1)借助JSP技術,Web網(wǎng)頁設計人員可以使用HTML或者XML標記來設計和風格化Web頁面,使用JSP標記來生成動態(tài)Web頁面。在服務器端,JSP引擎負責解釋JSP標記和腳本,生產(chǎn)請求的內(nèi)容,然后將結(jié)果以HTML頁面等形式發(fā)送回瀏覽器。這樣開發(fā)者可以保護自己的核心代碼,同時可以保證任何Web瀏覽器的高度兼容性。 (2)JSP頁面可借助可重用的、
28、跨平臺的組件(JavaBean),來執(zhí)行Web應用所要求的極為復雜的業(yè)務處理。能夠共享和交換調(diào)用一般操作的組件,或者讓這些組件被別的開發(fā)人員或者開發(fā)團隊所使用。 (3)通過開發(fā)定制化的標簽庫等方法,JSP技術可以支持動態(tài)擴展技術。 (4)作為Java的一個重要組成部分,JSP技術能夠支持高度復雜的、基于Web的企業(yè)級應用。JSP技術可以輕松地與現(xiàn)有多種應用體系架構(gòu)整合,可以充分利用已有開發(fā)工具和技巧,并擴展到企業(yè)級分布式應用環(huán)境。 此外,JSP技術無論是在跨平臺特性、運行效率、企業(yè)級軟件開發(fā)還是商業(yè)支持方面都具有優(yōu)勢,從而使其成為目前進行動態(tài)網(wǎng)頁開發(fā)的最佳工具之一。 2.2 MySQL
29、 MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQLAB公司。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。使用MySQL數(shù)據(jù)庫有以下下的優(yōu)點: 1.使用C和C++編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等
30、多種操作系統(tǒng) 3.為多種編程語言提供了API。這些編程語言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 4.支持多線程,充分利用CPU資源 5.優(yōu)化的SQL查詢算法,有效地提高查詢速度 6.既能夠作為一個單獨的應用程序應用在客戶端服務器網(wǎng)絡環(huán)境中,也能夠作為一個庫而嵌入到其他的軟件中。 7.提供多語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。 8.提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑。 9.提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操
31、作的管理工具。 10.支持大型的數(shù)據(jù)庫??梢蕴幚頁碛猩锨f條記錄的大型數(shù)據(jù)庫。 2.3 Tomcat Tomcat是Apache公司組織開發(fā)飛一種JSP引擎,由于自身具有Web服務器,可以作為獨立的Web服務器使用。與傳統(tǒng)的桌面應用程序不同,Tomcat中的應用程序是一個WAR(WebArchive)文件。WAR是Sun提出的一種Web應用程序格式,與JAR類似,也是許多文件的一個壓縮包。這個包中的文件按一定目錄結(jié)構(gòu)來組織:通常其根目錄下包含有HTML和JSP文件或者包含這兩種文件的目錄,另外還會有一個WEB-INF目錄,這個目錄很重要。通常在WEB-INF目錄下有一個web.xm
32、l文件和一個classes目錄,web.xml是這個應用的配置文件,而classes目錄下則包含編譯好的Servlet類和JSP或Servlet所依賴的其它類(如JavaBean)。 在Tomcat中,應用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應用的JSP時,通常第一次會很慢,因為Tomcat要將JSP轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會很快。另外Tomcat也提供了一個應用:manager,訪問這個應用需要用戶名和密碼,用戶名和密碼存儲在一個XML文件中。通過這個應用,輔
33、助于FTP,你可以在遠程通過Web部署和撤銷應用。當然本地也可以。 Tomcat不僅僅是一個Servlet容器,它也具有傳統(tǒng)的Web服務器的功能:處理HTML頁面。但是與Apache相比,它的處理靜態(tài)HTML的能力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)HTML,而Tomcat處理JSP和Servlet。這種集成只需要修改一下Apache和Tomcat的配置文件即可。 另外,Tomcat提供Realm支持。Realm類似于Unix里面的group。在Unix中,一個group對應著系統(tǒng)的一定資源,某個group不能訪問不屬于它的資源。Tom
34、cat用Realm來對不同的應用(類似系統(tǒng)資源)賦給不同的用戶(類似group)。沒有權限的用戶則不能訪問這個應用。 基于Tomcat的開發(fā)其實主要是JSP和Servlet的開發(fā),開發(fā)JSP和Servlet非常簡單,你可以用普通的文本編輯器或者IDE,然后將其打包成WAR即可。我們這里要提到另外一個工具Ant,Ant也是Jakarta中的一個子項目,它所實現(xiàn)的功能類似于Unix中的make。你需要寫一個build.xml文件,然后運行Ant就可以完成xml文件中定義的工作,這個工具對于一個大的應用來說非常好,我們只需在xml中寫很少的東西就可以將其編譯并打包成WAR。事實上,在很多應用服務器
35、的發(fā)布中都包含了Ant。另外,在JSP1.2中,可以利用標簽庫實現(xiàn)Java代碼與HTML文件的分離,使JSP的維護更方便。 Tomcat也可以與其它一些軟件集成起來實現(xiàn)更多的功能。如與上面提到的JBoss集成起來開發(fā)EJB,與Cocoon(Apache的另外一個項目)集成起來開發(fā)基于XML的應用,與OpenJMS集成起來開發(fā)JMS應用,除了我們提到的這幾種,可以與Tomcat集成的軟件還有很多。 Tomcat確實是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性。如今,開源軟件越來越收到人們的重視,Linux就是一個成功的典型。 2.4 連接數(shù)據(jù)庫與JavaScript JD
36、BC(Java DataBase Connectivity)是Sun公司制定的Java鏈接數(shù)據(jù)庫技術。在安裝好數(shù)據(jù)庫后JSP并不能直接與數(shù)據(jù)庫連接,這里選擇利用第三方JDBC驅(qū)動程序連接數(shù)據(jù)庫。在加載了JDBC驅(qū)動程序,建立了數(shù)據(jù)庫的URL后,創(chuàng)建一個DBUtil.java的文件,通過調(diào)用DriverManager類的getConnection方法與db_Business數(shù)據(jù)庫連接。在getConnection方法的實現(xiàn)中,聲明數(shù)據(jù)庫名稱為db_Business。這樣,在其他的Java文件和頁面中聲明調(diào)用或包含了DBUtil.java文件后,都可以對數(shù)據(jù)庫操作了。 JavaScript也叫小
37、腳本語言,是一種基于對象和事件驅(qū)動并具有安全性能的腳本語言,使用它的目的是與HTML超文本標識語言、Java腳本語言一起實現(xiàn)在一個網(wǎng)頁中鏈接多個對象,與網(wǎng)絡客戶交互作用,從而可以開發(fā)客戶端的應用程序。它是通過嵌入或調(diào)入在標準的HTML語言中實現(xiàn)的。 2.5 CSS層 CSS層疊樣式表(Cascading Style Sheet)是一系列格式規(guī)則,它們控制網(wǎng)頁內(nèi)容的外觀。使用CSS可以非常靈活并更好地控制具體的頁面外觀,從精確的布局定位到特定的字體和樣式,并能極大的方便網(wǎng)頁制作的工作。這次設計中就學習使用了CSS層疊樣式表,在HTML文文檔外部將一系列CSS規(guī)則存儲到一個.CSS文件中。例如
38、創(chuàng)建了一個名為body的選擇器。利用它來統(tǒng)一設計網(wǎng)站內(nèi)網(wǎng)頁背景及外部框架的樣式。在聲明中規(guī)定了頁面的背景、滾動條的顏色樣式等。還用.br和.wenbenkuang兩個選擇器確定輸出文本框時的樣式。由于CSS已經(jīng)規(guī)定聲明部分中的屬性及其取值范圍,所以對于我這樣初學者的難點就是如何找到合適的屬性來實現(xiàn)頁面設計。 3 系統(tǒng)分析 3.1功能需求分析 根據(jù)網(wǎng)站功能上的要求,需要設計出網(wǎng)站的用戶管理與產(chǎn)品瀏覽及購物車管理。用戶在用戶管理中選購物品后生成訂單,網(wǎng)站的后臺需要能相應的做出更新或修改。根據(jù)以上的想法,設計出網(wǎng)站的功能,用戶相關功能及簡單說明如下: (1) 用戶注冊、登錄;用戶注
39、冊時如果有重復則提示注冊不成功,登錄時和數(shù)據(jù)庫核對用戶名和密碼,如果正確則可以登錄,否則提示錯誤。 (2) 商品查看及選購;用戶可以進入網(wǎng)站選購商品放入購物車,無論用戶是否處于登錄狀態(tài)。商品可以按照價格由高到低,或者由低到高,折扣由高到低,上裝下裝,戶內(nèi)與戶外進行分類,用戶選擇好自己想要的圖書后可以添加到購物車,并在購物車中對商品進行一些操作,如:核對并修改信息、核對庫存、數(shù)量、金額等。 (3) 訂單查詢;用戶登錄網(wǎng)站后,可以查看個人賬戶,從中獲取訂單消息。 (4) 個人信息修改;用戶登錄以后,可以通過個人賬戶對個人信息進行修改。 管理員管理相關功能及簡單說明如下: (1) 查詢商品
40、;管理員可以進入商品的數(shù)據(jù)庫進行商品查詢。 (2) 添加商品;首先進入數(shù)據(jù)庫添加上平單價,數(shù)量等信息,然后制作html網(wǎng)頁,添加到網(wǎng)站上。 (3) 查詢用戶信息;管理員可以登錄用戶數(shù)據(jù)庫進行用戶信息查詢。 (4) 管理訂單信息;將用戶所下的訂單導入數(shù)據(jù)庫,建立一個訂單表,從中查看所有用戶的訂單信息,并按時間排序。 購物車管理功能包括: (1)核對用戶信息;若用戶登錄了,則根據(jù)用戶名來核對用戶信息,如果用戶沒有登錄,則根據(jù)用戶電腦的cookie信息來核對用戶信息。 (2)核對庫存;每當用戶將一件商品放入購物車時,顯示庫存實時余量 (3)核對商品信息及數(shù)量;當用戶將商品放入購物車時
41、,商品數(shù)量不變,當用戶下該商品訂單時,商品數(shù)量減少相應的數(shù)量,并在數(shù)據(jù)庫中更新。 (4)核對金額;時刻對頁面的售價是否和數(shù)據(jù)庫中的一致。 將以上這些功能制作成網(wǎng)頁以后,在其中分別互相建立連接,基本完成商城及用戶對網(wǎng)站的要求。 3.2 可行性分析 可行性分析也稱可行性研究,是決策部門在采取一項重大改革或投資行動之前,對該項目的必要性和可能性進行分析與論證的活動??尚行苑治鍪窃谶M行初步調(diào)查后所進行的對系統(tǒng)開發(fā)必要性和可能性的研究,以避免投資失誤,保證新系統(tǒng)開發(fā)成功。軟件可行性研究的目的就是用最小大代價在盡可能短的時間內(nèi)確定該軟件項目是否能夠開發(fā),是否值得去開發(fā)。網(wǎng)上購物系統(tǒng)應從技術可行性,
42、經(jīng)濟可行性和社會可行性三方面來論證。 3.2.1技術可行性分析 技術可行性分析主要包括硬件和技術等幾個方面,下面分別對這幾方面進行簡單的分析: (1) 硬件:當今世界隨著計算機的普及,計算機硬件行業(yè)也隨之日新月異。對于一款簡單的網(wǎng)上購物系統(tǒng)普通的PC機都能流暢的運行更別說專業(yè)的Web服務器了,所以對于網(wǎng)上購物系統(tǒng)的硬件問題已經(jīng)不再是關鍵性問題。 (2) 技術:這個網(wǎng)上購物系統(tǒng)采用的開發(fā)語言是Java語言,Java語言擅長Web方面的系統(tǒng)開發(fā),系統(tǒng)采基于java語言的JSP技術開發(fā),JSP是Sun屬下JavaSoft公司推出的技術,使用的Java語言是ASP、PHP和JSP三者中最新的技
43、術。它以JavaServlet技術為基礎,又在許多方面作了改進,并且充分借鑒了ASP和PHP一些合理的地方,采用JSP開發(fā)可以明顯的降低系統(tǒng)開發(fā)的工作量同時降低系統(tǒng)開發(fā)過程中的錯誤率。 3.2.2經(jīng)濟可行性分析 網(wǎng)上購物系統(tǒng)是基于Java的而Java是開源免費的,另外該系統(tǒng)所采用的Tomcat服務器、MySQL數(shù)據(jù)庫服務器都是開源免費的,這樣在成本上勢必會降低很多。使用的JSP技術是常見而高效的系統(tǒng)開發(fā)技術。這樣即減少了開發(fā)成本又提高了開發(fā)效率。對于一般公司來說該系統(tǒng)經(jīng)濟上是完全可行的。 3.2.3 社會因素可行性分析 社會因素可行性主要包括法律因素可行性和用戶使用可行性,下面就這兩個
44、方面進行簡單的分析: (1)法律因素可行性:本系統(tǒng)完全是自主開發(fā),開發(fā)完成以后也將免費開源,因此任何企業(yè)都可以使用該系統(tǒng)而不需要額外支付任何費用。另外本系統(tǒng)主要是給用戶推銷所需的商品,并不會違反相關的法律。 (2)用戶使用可行性:本系統(tǒng)主要是為滿足廣大用戶的需求,用戶對網(wǎng)上購物已經(jīng)有了一定的了解,操作方面只需要點擊幾下鼠標就可完成,十分簡單。因此用戶在使用本系統(tǒng)時不需要專門的培訓。 3.3性能需求分析 網(wǎng)上購物系統(tǒng)主要的用戶群是普通用戶,所以在設計上必須遵循以下幾點準則: (1) 易用性:網(wǎng)上購物中用戶只需輕點幾下鼠標就可獲取所需的商品,并且比實體店提供的商品更加的齊全。 (2)
45、快捷性:當用戶訂購完所需的商品后,網(wǎng)站馬上安排快遞發(fā)貨,盡早的將商品送達客戶的手中。 (3) 安全性:網(wǎng)站中用戶的信息存放在數(shù)據(jù)庫中,管理員之外的人需要密碼才能進入查看,因此,個人信息是十分安全的,訂單付款方面既可以貨到付款也可以通過支付寶付款,安全有保障。 (4) 實時性:商品價格和數(shù)量等信息實時更新,確保用戶獲取的信息是實施有效的,有新商品時也會及時加入。 3.4 運行環(huán)境及開發(fā)工具 這個系統(tǒng)設計的并不復雜,所有用到的開發(fā)工具比較少,具體用到的工具如下所示: 操作系統(tǒng):Windows XP 數(shù)據(jù)庫:MySQL Web應用服務器:Tomcat6.0 開發(fā)工具:MyEcl
46、ipse 4 系統(tǒng)總體設計 4.1 系統(tǒng)結(jié)構(gòu)設計 根據(jù)系統(tǒng)分析,需要將網(wǎng)站劃分為前臺、后臺和數(shù)據(jù)庫。前臺中,客戶在登錄網(wǎng)站主頁后即可鏈接查看到商品等信息,還可以做訂購商品等活動。數(shù)據(jù)庫將要作為網(wǎng)站后臺重要的組成部分,管理員的主要操作幾乎全部圍繞數(shù)據(jù)庫,最后將更新的數(shù)據(jù)要顯示給前臺。 前臺是一個比較大的功能群,它所包含的信息不僅數(shù)量多,而且種類不同。將它設計成比較優(yōu)化的結(jié)構(gòu)形式能組織好網(wǎng)站的信息內(nèi)容并將其歸類,方便用戶獲得所需要的信息。其中每一部分都以盡量少的內(nèi)容顯示,以免瀏覽者看的眼花繚亂而失去耐心。除了這些作用外,設計好前臺的結(jié)構(gòu)形式,也是為后面程序的編寫做出了框架。
47、在為系統(tǒng)劃分功能模塊,并以模塊為單位來實現(xiàn)設計時也是以這個結(jié)構(gòu)為根基的。 系統(tǒng)的后臺要對整個網(wǎng)站的信息和數(shù)據(jù)進行維護。網(wǎng)站前臺所顯示的信息在后臺都應該有對應的維護。這樣,除了設計后臺的各個管理界面外,為了方便管理員的工作,可以將各個管理的界面結(jié)合到一個頁面中。因此,各個管理的界面會作為主管理界面的分支。 在設計好網(wǎng)站前臺與后臺的結(jié)構(gòu)以后,就將數(shù)據(jù)庫加入到結(jié)構(gòu)中。后臺將更新的數(shù)據(jù)寫入到數(shù)據(jù)庫中,前臺再將數(shù)據(jù)庫中的信息取出來并顯示。 4.2 功能模塊設計 層次模塊結(jié)構(gòu)是將系統(tǒng)劃分為若干子系統(tǒng),子系統(tǒng)下再劃分為若干的模塊。而模塊是指具備有輸入輸出、邏輯功能、運行程序和內(nèi)部數(shù)據(jù)四種屬性的一組程
48、序。在結(jié)構(gòu)化系統(tǒng)設計中,模塊一般都是按功能劃分的,通常稱為功能模塊。合理的功能模塊的劃分能夠極大限度地減少重復勞動、提高開發(fā)工作的效率并增大系統(tǒng)的可維護性。 4.2.1用戶管理 為了方便于網(wǎng)站的管理,必須由一套完整的用戶管理體系。該網(wǎng)站用戶管理模塊主要實現(xiàn)用戶的注冊、登錄、選購商品、修改信息等功能。 圖4.1 用戶管理結(jié)構(gòu)圖 4.2.2 管理員管理 管理員可以對商品(包括商品的種類)進行增刪改查得操作,同時,對已注冊用戶同樣可以進行相同的操作,并根據(jù)用戶購買量對用戶的等級進行修改。此外,管理員最重要的職責是可以修改訂單狀態(tài),把是否已發(fā)貨的信息反饋給前臺用戶。 圖4.2
49、 管理員管理結(jié)構(gòu)圖 4.2.3 購物車管理 用戶選擇好自己想要的圖書后可以添加到購物車,并在購物車中對商品進行一些操作,如:核對并修改信息、核對庫存、數(shù)量、金額等。 圖4.3 購物車管理結(jié)構(gòu)圖 4.3 數(shù)據(jù)庫設計 數(shù)據(jù)庫是數(shù)據(jù)庫應用程序的重要組成部分。一個設計結(jié)構(gòu)合理的數(shù)據(jù)庫對于應用程序的開發(fā)效率和程序的性能都是非常重要的。數(shù)據(jù)庫的設計過程大致如下: (1)根據(jù)用戶需求,確定數(shù)據(jù)庫中要保存的數(shù)據(jù)信息。對用戶需求進行分析時數(shù)據(jù)庫設計的第一個階段。不斷的調(diào)查與研究用戶需求,了解企業(yè)運作流程等系統(tǒng)需求,使設計概念模型的基礎。 (2)設計數(shù)據(jù)庫的概念模型。概念模型是按用戶的觀點來對
50、數(shù)據(jù)建模,使用與進行信息世界建模的工具。它對整個數(shù)據(jù)庫的設計具有深刻的影響。 (3)邏輯結(jié)構(gòu)設計。邏輯結(jié)構(gòu)是把概念結(jié)構(gòu)轉(zhuǎn)化為與所采用的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型相符合的過程。 (4)數(shù)據(jù)庫的實施和維護。在設計好前臺與后臺的功能模塊后,就開始進行數(shù)據(jù)庫的設計了。根據(jù)網(wǎng)站系統(tǒng)的分析,數(shù)據(jù)庫是整個網(wǎng)站的核心。從前臺顯示的信息到后臺操作的對象,都是圍繞數(shù)據(jù)庫展開的。 4.3.1 E-R圖 E-R圖是一種概念模型。概念模型實際上是現(xiàn)實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是顯示世界到信息世界的第一層抽象,使數(shù)據(jù)庫設計人員進行數(shù)據(jù)庫設計的有利工具,也是數(shù)據(jù)庫設計人員和用戶之
51、間進行交流的語言,因此概念模型一方面應該具有較強的語義表達能力,能夠方便、直接的表達應該用眾的各種語義知識,另一方面他還應該簡單、清晰并且易于用戶理解。 從系統(tǒng)需求分析中得出系統(tǒng)的實體屬性圖,遵循三范圍原則,對實體之間的一欄關系進行了整合,得出總體E_R圖,如圖4.4所示。 用戶 購買 商品 n 1 支付 訂單 n 1 注銷 登錄 1 1 修改 用戶信息 1 1 圖4.4 總體E-R圖 4.3.2基本表設計 表的設計是這次設計的一個核心內(nèi)容。根據(jù)前面對網(wǎng)站前臺與后臺功能模塊的分析和對數(shù)據(jù)庫中實體關系的設計,可以看到網(wǎng)站中所用到的數(shù)據(jù)信息基本包括:用
52、戶信息、收貨信息、產(chǎn)品類別、產(chǎn)品信息、圖書信息、訂單信息、訂單明細等。下面是為數(shù)據(jù)庫設計的表: (1) 用戶信息表 d_user 用戶信息表d_user用來保存用戶信息。 表4-1 d_user的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否為空 是否為主鍵 字段描述 Id Int 12 否 是 用戶ID Email Varchar 50 否 是 郵箱 Nickname Varchar 50 是 否 妮稱 Password Varchar 50 否 否 用戶密碼 User_integral Int 12 否 否 用戶積分
53、Is_email_verify Char 3 否 否 用戶驗證 Last_login_time Bigint 20 是 否 最近一次登錄時間 Last_login_ip Varchar 15 是 否 登錄IP (2) 收貨地址表 d_receive_address 收貨地址表d_receive_address用來保存用戶下訂單時使用過的收貨地址信息。 表4-2 d_receive_address的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否為空 是否為主鍵 字段描述 Id Int 12 否 是 地址編號 User_id Int 1
54、1 否 否 用戶編號 Receive_name Varchar 20 否 否 真實姓名 Postal_code Varchar 8 否 否 郵政編碼 Mobile Varchar 15 是 否 手機 Phone Varchar 20 是 否 電話 (3) 產(chǎn)品類別表 d_category 產(chǎn)品類別表 d_category用來保存了系統(tǒng)產(chǎn)品的類別信息。 表4-3 d_category的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否為空 是否為主鍵 字段描述 Id integer 16 否 是 類別編號 Turn In
55、t 10 否 否 等級 En_name Varchar 200 否 否 產(chǎn)品類型 name varchar 200 否 否 類別名 Description varchar 200 否 否 類別說明 Parent_id Int 10 是 否 父類別編號 (4) 產(chǎn)品表 d_product 產(chǎn)品表 d_product用來保存了系統(tǒng)中的產(chǎn)品信息。 表4-4 d_product的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否允許空 是否為主鍵 字段描述 id Int 12 否 是 產(chǎn)品編號 product_name Va
56、rchar 100 否 否 產(chǎn)品名稱 description Varchar 100 是 否 產(chǎn)品介紹 add_time Bigint 20 是 否 添加時間 fixed_price Double 20 否 否 產(chǎn)品進價 dang_price Double 20 否 否 產(chǎn)品售價 keywords Varchar 200 是 否 關鍵詞 Has_deleted Int 1 否 否 產(chǎn)品下架 Product_pic Varchar 200 是 否 產(chǎn)品圖片 (5) 產(chǎn)品類別對應關系表d_category
57、_product 產(chǎn)品類別對應關系表用來保存產(chǎn)品和類別之間的對應關系.比如某個類別包含哪些商品。 表4-5 d_category_product的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否允許空 是否為主鍵 字段描述 Id Int 12 否 是 編號 Product_id Int 10 否 否 產(chǎn)品編號 Cat_id Int 10 否 否 類別編號 (6) 訂單明細表 d_item 訂單明細表 d_item用來保存訂單購買了哪些商品,數(shù)量,小計等。 表4-6 d_item的結(jié)構(gòu) 字段名稱 數(shù)據(jù)類型 長度 是否允許空 是否為主鍵
58、 字段描述 Id Int 12 否 是 編號 Order_id Int 10 否 否 訂單編號 Product_id Int 10 否 否 產(chǎn)品編號 Product_name Varchar 100 否 否 產(chǎn)品名稱 Dang_price Double 20 否 否 產(chǎn)品售價 Product_num Int 10 否 否 產(chǎn)品數(shù)量 Amount Double 20 否 否 總金額 5 系統(tǒng)實現(xiàn) 在上一章著重討論了系統(tǒng)各個模塊功能的設計,并詳細分析了每一個模塊的功能。在
59、本章將具體討論如何實現(xiàn)功能模塊,最終實現(xiàn)整個系統(tǒng)。經(jīng)過這個階段的設計工作,應該得出對目標系統(tǒng)的描述,從而在編碼階段可以把這個描述直接翻譯成用JSP網(wǎng)頁設計語言書寫的程序。 5.1 系統(tǒng)頁面的實現(xiàn) 如果將網(wǎng)站比作一個人的話,服務器就像大腦,數(shù)據(jù)庫就像五臟六腑,其內(nèi)嵌的Java和JavaScript組合起來就像是細胞與神經(jīng),而網(wǎng)頁就是這個人的皮肉。網(wǎng)頁將網(wǎng)站的各個組成部分包裹起來,形成易懂并且美觀的外表展示給大家,瀏覽者登陸網(wǎng)站后看到的就是一個個網(wǎng)頁的組合。所以設計和實現(xiàn)每一個網(wǎng)頁也是非常重要的工作。 隨著科技的高速發(fā)展,眾多網(wǎng)頁制作的應用軟件應運而生。相對于傳統(tǒng)的動態(tài)網(wǎng)頁開發(fā)工具而言,由于
60、繼承了Java語言的許多優(yōu)點,用JSP開發(fā)動態(tài)網(wǎng)站十分方便,開發(fā)效率較高。此外,JSP還具有強大的組件(JavaBean)支持功能,可以方便地實現(xiàn)組件復用,進一步提高了開發(fā)效率。 在整個網(wǎng)頁的制作過程中,都是結(jié)合使用HTML語言來實現(xiàn)設計的。系統(tǒng)的頁面設計決定了網(wǎng)站的風格,制作好的網(wǎng)站不僅提供給營銷商,更多的要供瀏覽者瀏覽。所以整個網(wǎng)站系統(tǒng)應注重的是:易導航性、易操作性和友好的交互界面。因此,網(wǎng)站的設計最好要簡潔、明了、格調(diào)清新、實用、易于使用和維護。在頁面的風格上應保持統(tǒng)一,這里采用CSS樣式表將所有頁面的字體、字號、顏色以及超鏈接的樣式做統(tǒng)一定義。 5.2 前臺功能模塊實現(xiàn) 整個系統(tǒng)
61、分為了前臺功能模塊和后臺功能模塊。下面詳細討論主要的幾個功能模塊的程序?qū)崿F(xiàn)。在每個模塊的介紹中,將具體說明一些涉及要點。 前臺功能模塊分為用戶管理模塊、訂單查詢模塊、購物車模塊3個部分。前臺首頁主要有以下幾個部分: (1)網(wǎng)站導航:主要用戶顯示網(wǎng)站的旗幟廣告、各功能模塊導航; (2)用戶登錄:用戶在此注冊、登錄或找回密碼; (3)商品分類搜索:用戶按商品類別進行搜索顯示; (4)銷售排行榜:按照商品的銷售數(shù)量顯示銷售排行信息; (5)商品展示區(qū):按后臺添加商品的時間順序展示商品; (6)友情鏈接:顯示友情鏈接信息; (7)后臺登錄入口:管理員可以通過該入口登錄后臺。 5.2.
62、1用戶管理模塊 用戶管理模塊主要實現(xiàn)用戶的注冊、登錄等功能。 (1)用戶注冊 當用戶第一次登錄時首先要在網(wǎng)站上注冊,成為會員用戶才可以在網(wǎng)站上購物,注冊頁面必須填寫一些用戶的基本信息,如用戶名、密碼、聯(lián)系電話等信息。用戶注冊的流程圖如圖5.1所示。 開 始 否 是 是 結(jié) 束 接收注冊信息 數(shù)據(jù)是否為空 兩次密碼是否一致 查詢數(shù)據(jù)庫 用戶名是否被占用 是 否 否 注冊成功 注冊失敗 用戶注冊流程如圖5.1 用戶注冊頁面如圖5.2所示。 圖5.2 用戶注冊頁面 用戶注冊信息提交,注冊成功頁面如圖5.3所示。 圖5.3 用戶注
63、冊成功頁面 為了便于網(wǎng)站對用戶的管理,在用戶注冊頁面接收到的注冊信息要經(jīng)過嚴格的過濾,保證注冊用戶名的唯一性,在提交表單后需要對數(shù)據(jù)表中的數(shù)據(jù)進行查詢,如果沒有找到,則在插入數(shù)據(jù)表時提示注冊成功,否則提示此用戶已被占用請重新注冊,注冊時如果輸入郵箱,也會有唯一性的限制。 (2)用戶登錄 用戶登錄窗口設置在首頁上,主要用來接收用戶錄入的用戶名及密碼。單擊“注冊”按鈕時,會提交到用戶登錄頁面執(zhí)行;單擊“登錄”按鈕時,系統(tǒng)將對輸入的用戶名和密碼進行驗證,如果數(shù)據(jù)表中用戶名和密碼存在就顯示登陸成功,并返回首頁,否則彈出錯誤提示信息。用戶登錄的流程圖如圖5.4所示。 開 始 結(jié) 束
64、接收登錄信息 查詢數(shù)據(jù)庫 數(shù)據(jù)是否正確 否 是 登錄失敗 登錄成功 用戶登錄流程圖5.4 登錄的代碼如下 Private Sub command1_click() dim conn as new adodb.connection dim rs as new adodb.recordset dim str as string Static logintimes As Integer dim sql as string str = App.Path If Right(str, 1) <> "\" Then str = str + "\"
65、End If str = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & str & "\yusion.mdb" conn.open str rs.cursorlocation=aduseclient sql="select * from user where 用戶名=" & text1.text & "" rs.open sql,conn,adopenkeyset.adlockpessimistic if rs.recordset.eof and rs.rec
66、ordset.bof then msgbox "沒有此用戶" else if trim(text2.text)=rs.fields("密碼").velue then me.hide form2.show else msgbox "密碼錯誤,請重試!" 用戶登錄界面如圖5.5所示。 圖5.5用戶登錄頁面 5.2.2購物車模塊 購物車模塊中,主要包含以下幾個功能,即:添加購物車、查看購物車、生成訂單和清空購物車。 (1)添加購物車 添加購物車就是把用戶選中的商品暫時存放在購物車中,當用戶在前臺首頁中單擊商品展示區(qū)的“購買”按鈕時,系統(tǒng)會將該商品的詳細信息展示在查看物品清單頁面中。用戶在單擊物品清單頁面下方的“放入購物車”鏈接,便可以將該商品放入購物車中。 添加商品的代碼流程是從session中讀取shop對象,如果為空則說明還沒有進行購物或者已經(jīng)清空了購物車,需要新建購物車對象;將商品名稱與購物車列表中的商品名稱對比,如果已經(jīng)存在,則把商品數(shù)量加1。 在這段代碼流程中,還使用了集合類型。集合類型在Java中又稱為向量,是一元集
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。