董 婷
(榆林學院 信息工程學院,陜西 榆林 719000)
基于JSP網上購書系統的設計與實現
董 婷
(榆林學院 信息工程學院,陜西 榆林 719000)
針對傳統銷售方式中不便于管理、效率低等缺點,將電子商務技術和計算機技術結合起來,開發出管理更便利、效率更高的網上圖書銷售系統。本系統基于B/S三層體系結構和Struts開發框架,采用JDBC數據庫訪問技術和Tomcat應用服務器等關鍵技術,并對系統功能進行分析,得出4個功能模塊:圖書瀏覽、購物車管理、訂單管理和用戶管理。功能的實現是基于JSP.技術與JAVA相結合,最終設計并實現了一個功能強大的圖書銷售系統平臺。
電子商務技術;B/S;Java;JSP技術
我國第一家網上書城于1997年由杭州市新華書城開辦,該店只維持了1年最終便以失敗告終[1]。經過十幾年的發展,今天我國的網上書城已經頗具規模,能夠在網上買賣圖書的網站已經有數百家,并形成了各種不同的發展模式和格局,其營業額在圖書零售市場上約占5%[2]。但是各網上書城的盈利情況良莠不齊,生生死死不計其數,領跑的始終是當當網和卓越亞馬遜兩家,二者在網店經營中一直保持了優勢地位,并占據整個網上書城營業額的80%[3]。
JDBC(Java Data Base Connection)——Java數據庫連接技術,是一種執行SQL語句的Java API的技術,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成[4]。
JSP(Java Sever Page)——Java服務器端頁面技術,它使用Java編程語言編寫類似XML的標簽,用來封裝產生動態網頁的處理邏輯[5]。存在于服務端的資源的應用邏輯可以被網頁通過標簽訪問[6]。
Struct是一種用于開發Java Web程序的框架。Struts是在JSP模型的基礎實現了MVC設計模式的WEB框架。它的目的是為了減少在運用MVC設計模型來開發Web應用的時間,它將可以完成其中一些繁重的工作。Struts有其自己的控制器,同時整合了其他的一些技術去實現模型層(Model)和視圖層(View)。在模型層,Struts可以很容易的與數據訪問技術相結合,例如,JDBC技術。
Tomcat也具有傳統的Web服務器的功能:處理Html頁面。但是與Apache相比,它的處理靜態Html的能力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態Html,而Tomcat處理Jsp和Servlet。Tomcat是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性,越來越受到人們的重視。本系統的框架如圖1所示。

圖1 框架圖Fig. 1 Frame diagram
可行性分析,是用最小的代價、在盡可能短的時間內確定問題是否能夠解決。在澄清了問題定義之后,分析員首先應該導出系統的邏輯模型,然后從系統邏輯模型出發,探索出若干種可供選擇的主要解法。最后仔細研究每種解法的可行性。系統的可行性分析,是針對要設計的系統,研究其設計是否存在內外部的必要條件,包括技術上、資金上、經濟上、人力資源以及組織管理上的必要條件,同時要分析在目前條件下是否有必要設計這樣一個系統。
根據綜合分析,要最終實現網上書城系統,需要用到JAVA EE技術、數據庫技術(JDBC及Mysql),以及軟件工程的具體方法等內容。而這些技術在當前IT行業看來都已經發展的相當得成熟。因此,從技術上的角度考慮,最終實現該網上書城系統是確實可行的。
從經濟上來考慮,這方面的投資少,回收快,而且無所謂存貨等,所以特別適合小商店和個人在網上創業。從啟動資金來看,傳統的地面開店,門面租金加裝修費,還有首批進貨資金等等,少說也需要幾萬元的啟動資金或者更多。而網上開店所需的啟動資金卻少得多的多,只需要架設一臺主機服務器,配備一定的操作人員就可以。
網上書城系統的界面設計時充分考慮用戶的習慣,用戶體驗良好,操作簡單;數據錄入迅速、規范、可靠;統計準確;適應力強;容易擴充。
只要注冊后的用戶才能進行圖書的購買,用戶進入注冊界面進行注冊,在注冊時要求輸入的用戶注冊信息,其中主要包含用戶名、密碼、郵箱、驗證碼等。(注:用戶必須有有效的郵箱,因為你確認注冊后,系統會將該用戶注冊好時的校驗碼發到對應郵箱)。
點擊結算后,進入購物信息頁面,點擊下一步后,首先去判斷用戶是否登錄系統:如果沒有登錄,直接轉到登錄頁面,登錄后,然后繼續購物操作。如果已經登錄,繼續進入填寫收貨信息頁面,左上側下拉select菜單是登錄當前用戶已經存在的多個地址,可以通過選擇不同地址,直接顯示相應地址到表單組件中,運用了Ajax請求技術,其他信息系統將會自動幫助填寫,這樣可以避免用戶重復填寫,方便用戶再次購買。確認后清空購物車和cookie,更改數據表。
點擊產品列表頁面的購買,添加對應圖書到購物車,(這里用到session,cookie技術,用session記錄購物的全程)。當用戶退出瀏覽器時購物車信息會存在cookie中,以便下次在同一機器上打開瀏覽器查看上次購買的信息,用戶可以點擊右上方的購物車查看購物詳細信息,購物車記錄每一種圖書的圖書名稱,市場價,會員價,購買數量,以及所有圖書的總價和相對市場價的節省金額。需要注意的是,在購物車中的商品并不一定是用戶最終必須購買的商品,其只是一個購物意向,用戶可以根據需要,在提交訂單之前,隨時修改購物車中的商品數量、或者取消購買。購物車中提供某一商品數量修改的功能,購物車中提供某一商品的刪除功能,恢復刪除的商品功能,提供繼續購物鏈接,以上任何操作涉及到金額都會動態修改,購物車管理類圖所圖2所示。

圖2 購物車管理類圖Fig. 2 Shopping cart management class
其中控制類CartAction依賴Cart業務類和CartForm,Cart依賴數據訪問類BookListImp,BookListImp依賴CartItem。
1)恢復刪除列表
當用戶從需要恢復刪除的商品列表時,首先從session中得到購物車對象,接著把刪除列表中商品添加到購買列表中,序列圖如圖3所示。
恢復刪除列表的主要代碼如下。


圖3 恢復刪除的商品序列圖Fig. 3 Recovery of commodity sequence deletion
2)添加圖書到購物車
當用戶點擊“購買”時,界面會通過Ajax方式異步發送一個add.do的post請求,參數標示為“id”,參數值為圖書的主鍵,這個主鍵通過表單隱藏域存放在jsp頁面中,ActionServer得到頁面請求后,會在struts-config.xml中匹配對應的action,如下:

在add方法中,首先從session中得到購物車的實例cart并且得到post請求所攜帶的參數,方法為request.getParameter("id"),調用Cart類中的add方法添加圖書主鍵到購物車中實例中,為了便于防止意外關閉瀏覽器,系統會保存于cookie中,最后響應用戶請求,提示用戶”購買成功。
添加購物車主要代碼如下。

網上書城系統無論是在開發過程中,還是建成后的日常維護過程中,都需要進行嚴格的檢測,以保證購書系統的服務質量。隨著網上書城系統技術的日趨成熟、網上購書的優勢日趨明顯,會有更多的人參與到網上購書的浪潮中來,人類最終將迎接電子商務時代的來臨。
[1] 鄧子云,張賜著.JSP網絡編程從基礎到實踐[M].北京:電子工業出版社, 2005.
[2] 王曉軍,田中雨,劉躍軍,等.JSP動態網站開發基礎教程與實驗指導[M].北京:清華大學出版社, 2008.
[3] 韓萬江,姜立新.軟件項目管理案例教程[M].北京:機械工業出版社, 2006.
[4] 徐峰,陳暄.UML面向對象建模基礎[M].北京:中國水利水電出版社, 2006.
[5] 張海,藩著.軟件工程導論[M].4版.北京:清華大學出版社, 2003.
[6] 梁循.數據挖掘算法與應用[M].北京:北京大學出版社,2006.
Design and implementation of online bookstore system based on JSP
DONG Ting
( School of Information Engineering,Yulin University,Yulin 719000,China)
According to the management, not for the traditional way of marketing in the defects of low efficiency, the combination of e-commerce technology and computer technology, online book sales system development management more convenient, more efficient.The system of B/S three layer structure and Struts development framework based on JDBC, the key technology of database access technology and Tomcat application server, and the functions of the system are analyzed, the four function modules: browse books, shopping cart management, order management and user management. The function implementation is based on the combination of JAVA and JSP. technology, the design and implementation of book sales system is a powerful platform.
electronic commerce technology;B/S; Java; JSP technology
TN711
A
1674-6236(2014)03-0011-03
2013–05–23 稿件編號:201305235
2012年榆林學院專項科研項目一般項目(12YK36)
董 婷(1981—),女,陜西岐山人,碩士,講師。研究方向:軟件工程。