黃真真
(泉州華光職業(yè)學(xué)院,福建 泉州362121)
隨著計算機(jī)行業(yè)的迅速崛起,網(wǎng)上書城不斷成熟發(fā)展,實體店已經(jīng)難以滿足消費(fèi)者的購物欲望,人們會選擇在網(wǎng)上購物,但網(wǎng)上商品目不暇接,避免不了有“選擇困難癥”,甚至隨波逐流選擇了不適合自己閱讀的書籍,想快速、準(zhǔn)確地找到自己想要的書籍,網(wǎng)上書城的出現(xiàn)就顯得很有必要了。據(jù)最新統(tǒng)計,中國大陸已經(jīng)注冊的網(wǎng)上書店應(yīng)該有200多家,有網(wǎng)站的只有100多家,但已經(jīng)投入運(yùn)營能夠買到書的商家并不多,據(jù)一家媒體調(diào)查,能夠順利快速買到書并受廣大網(wǎng)友喜歡的網(wǎng)上書城有大洋網(wǎng)、卓越網(wǎng)、當(dāng)當(dāng)網(wǎng)等幾家。相比于傳統(tǒng)書店,“ibook”網(wǎng)上書城的優(yōu)勢顯著。在“互聯(lián)網(wǎng)+”和大數(shù)據(jù)應(yīng)用廣泛的時代,“ibook”網(wǎng)上書城的出現(xiàn)將被廣大群眾需求所喜愛[1]。該商城提供書籍類的圖書展示和排序,減少了消費(fèi)者因商品繁多而無所適從,各類書籍整齊羅列,減少消費(fèi)者搜尋自己想要圖書的時間。在這個平臺上可實現(xiàn)全瀏覽,廣大網(wǎng)民喜歡這種購物方式,這不僅是書籍的舞臺,更是讀者的樂園。在當(dāng)前大背景下,“ibook”開發(fā)網(wǎng)上商城變得很有意義。
SSH框架是由struts+spring+hibernate三個集合成一個Web應(yīng)用程序開源框架[2]。系統(tǒng)的設(shè)計遵循著MVC框架,對前端頁面的實現(xiàn)有很大幫助,當(dāng)需要修改后臺數(shù)據(jù)庫時,對前端頁面也不會有影響。
Struts是MVC框架的優(yōu)秀代表,它處理著MVC的控制層[3]。本系統(tǒng)所采用的是它的下一個產(chǎn)品——Struts2.0,在原來的基礎(chǔ)上整合了WebWork與Struts的優(yōu)點(diǎn),使其MVC框架的擴(kuò)展性更強(qiáng)。Struts2本質(zhì)上相當(dāng)于一個servlet,以WebWork為核心,不僅可以攔截處理用戶的請求,還可以實現(xiàn)模型與視圖數(shù)據(jù)交互。
Spring可以將簡單的組件配置、組合成為復(fù)雜的應(yīng)用,它由JOHNSON R創(chuàng)建。它不僅用于服務(wù)器端的開發(fā),只要是Java應(yīng)用都可以應(yīng)用Spring??傊琒pring控制著程序中所有的類,并將其放入IOC容器中,綜合記錄日記、配置事務(wù)的編程框架。Spring在框架中充當(dāng)容器,控制系統(tǒng)的功能模塊和業(yè)務(wù)邏輯處理。當(dāng)遇到異常事件回滾和數(shù)據(jù)交互時,封裝處理會降低代碼的重用率,并且使開發(fā)過程更簡單。
Hibernate是個對象框架,可以運(yùn)用這個框架實現(xiàn)數(shù)據(jù)庫與持久化對象的映射[4],這樣數(shù)據(jù)庫的操作簡單易懂,提高了編程速度。
許多系統(tǒng)正常運(yùn)行的關(guān)鍵是底層數(shù)據(jù)庫中數(shù)據(jù)的一致性和完整性[5]。設(shè)計良好的數(shù)據(jù)庫不僅能更好地為應(yīng)用服務(wù),還能滿足應(yīng)用系統(tǒng)的業(yè)務(wù)需求、提高數(shù)據(jù)查詢效率,而不好的數(shù)據(jù)庫設(shè)計只會導(dǎo)致數(shù)據(jù)冗余、浪費(fèi)存儲空間和數(shù)據(jù)更新異常。
3.1.1 數(shù)據(jù)庫概要說明
本商城所使用的數(shù)據(jù)庫為MySQL數(shù)據(jù)庫,數(shù)據(jù)庫創(chuàng)建了7張表[6]。商城的用戶分為管理員和會員,每個用戶根據(jù)自己的賬號和密碼登錄到相應(yīng)的頁面,執(zhí)行不同的管理和操作[7]。每個實體類型、屬性和聯(lián)系人如圖1所示。
圖1 數(shù)據(jù)庫E-R圖
3.1.2 數(shù)據(jù)庫邏輯設(shè)計
設(shè)計“ibook”網(wǎng)上書城不僅要完善功能、設(shè)計界面,更要注重數(shù)據(jù)庫的數(shù)據(jù)設(shè)計,保證數(shù)據(jù)庫的完整性和數(shù)據(jù)的安全性。
3.2.1 書城設(shè)計目標(biāo)
社會科技的發(fā)展使人民生活水平提高,特別是在信息化網(wǎng)絡(luò)時代,網(wǎng)絡(luò)技術(shù)已經(jīng)滲透到社會領(lǐng)域等各個行業(yè),給網(wǎng)上購物商城帶來了商機(jī)。如今,企業(yè)的銷售不再局限于實體經(jīng)營這一單一方式,而是更加強(qiáng)調(diào)網(wǎng)上商城的作用。商城購物系統(tǒng)不僅為管理員提供了操作管理方面的便利,更為廣大消費(fèi)者提供了便利。因此,系統(tǒng)應(yīng)滿足以下要求:完成需求分析中分析的所有功能模塊,完善好商城的功能,UI界面設(shè)計保持簡潔優(yōu)雅、舒適可觀,頁面之間的切換過程需操作流暢。
3.2.2 書城界面設(shè)計
不同的界面布局會給消費(fèi)者帶來不一樣的消費(fèi)感受,優(yōu)秀的界面設(shè)計可以實現(xiàn)網(wǎng)站與用戶間的交互,可以為用戶提供更直觀的操作,提高會員的滿意度。商城的主界面是吸引用戶消費(fèi)的重要部分,對于控件的設(shè)計,設(shè)計者要選擇合理的導(dǎo)航方式,讓界面控件在視覺上統(tǒng)一,保證控件的合理性。打開本“ibook”書城系統(tǒng),最先出現(xiàn)的是書城主頁面,主頁面左上角為商城logo,商品分類欄采用顯示清晰的黑底白字,背景使用奶黃色與商城主體色融為一體。使用戶一看到就覺得舒心、溫暖。為了能讓用戶更好了解書籍最新最熱的信息,采用方格式顯示商品圖片,用戶能更好更直觀地感受系統(tǒng)界面設(shè)計帶來的方便。
3.3.1 注冊、登錄模塊的實現(xiàn)
若用戶沒有賬號登錄,可以先注冊,通過主界面右上方的注冊鏈接進(jìn)入注冊界面[8]。注冊界面的背景采用透明色,與注冊輸入框顏色互相交映存在,讓用戶更好地完善注冊功能。注冊成功后點(diǎn)擊登錄鏈接進(jìn)入登錄頁面,登錄界面由圖片和登錄欄構(gòu)成,書籍圖片的選擇可以提示一些優(yōu)惠消息,促進(jìn)用戶熱愛書籍。
3.3.2 購物車模塊的實現(xiàn)
會員如果沒有選擇商品,點(diǎn)擊右上方的購物車圖標(biāo),可看到購物車空空如也;沒有瀏覽到想要的書籍時,可以在上方搜索,查找功能是一個商城必須具有的功能,用戶瀏覽界面商品,經(jīng)常會通過關(guān)鍵字或者價格定位到自己想要的商品,如果沒有此功能,將大大減少用戶使用該商城,本系統(tǒng)通過對數(shù)據(jù)庫數(shù)據(jù)的查找定位,通過書名或者價格區(qū)間來查找商品。會員可以點(diǎn)擊菜單欄,先大概選擇自己想要的書籍類型,進(jìn)入后在左邊菜單欄二級查找自己想要的書籍;可點(diǎn)擊網(wǎng)頁中圖片查看書籍的詳細(xì)介紹,商品圖可放大顯示,如若想要,可以加入購物車,等待下單,價格旁邊顯示余量。用戶如果需要繼續(xù)購物,下方有按鈕可進(jìn)行跳轉(zhuǎn),也顯示了購買后會員積分和商品價格。
3.3.3 訂單模塊的實現(xiàn)
提交訂單后,會保留之前注冊的地址信息,可以更改,也可以直接確認(rèn)訂單;要生成訂單,首先調(diào)用OrderServer類來插入數(shù)據(jù)庫、創(chuàng)建訂單并設(shè)置訂單的總數(shù)。確認(rèn)訂單的總金額為購物車商品的總價,在購物過程中,如果沒有添加任何商品,會顯示購物車為空商品;如果沒有登錄商城,會提示需要先登錄。提交訂單后,購物車中的商品將再次顯示,狀態(tài)為未支付。此時,您可以隨時終止付款購買其他商品,后續(xù)付款也可以。會員確認(rèn)訂單后,跳轉(zhuǎn)到我的訂單,點(diǎn)擊付款鏈接,接下來就是等商城管理員發(fā)貨。
3.4.1 管理員登錄模塊的實現(xiàn)
在網(wǎng)站網(wǎng)址后輸入admin,可跳轉(zhuǎn)到管理員登錄界面,在密碼框輸入后可以點(diǎn)擊旁邊的“小眼睛”進(jìn)行查看。管理員登錄進(jìn)去后,上方是商城的logo,左右兩邊各是時間和用戶名,在界面的左邊有5個功能模塊方便管理員進(jìn)行操作。
3.4.2 用戶管理模塊的實現(xiàn)
管理員可以對會員信息進(jìn)行編輯和刪除操作。
3.4.3 商品管理模塊的實現(xiàn)
購物商城最主要的主體對象還是商品,上架商品在商品列表一覽無余,管理員可以對商品的信息進(jìn)行編輯和刪除,添加商品簡單快捷,使管理員有更多時間管理商城。
3.4.4 訂單管理模塊的實現(xiàn)
管理員瀏覽訂單信息。是否付款、確認(rèn)收貨與否都一一呈現(xiàn)在訂單狀態(tài)上,管理員可更好地操作整個購物系統(tǒng)。會員收到貨后,登錄網(wǎng)站,點(diǎn)擊確認(rèn)收貨后會顯示交易成功。
程序員設(shè)計出一款軟件后,并不能保證其穩(wěn)定性和沒有漏洞,這就需要進(jìn)行軟件測試。測試的目的是理解產(chǎn)品功能的要求,檢查軟件有沒有錯誤,然后及時糾正,以確保軟件正常運(yùn)行。因此,需要對軟件進(jìn)行測試,測試用例的要求應(yīng)包括邏輯關(guān)系是否正常、接口跳轉(zhuǎn)是否流暢、運(yùn)行中是否存在軟件缺陷。
本系統(tǒng)采用了SSH框架一些相對成熟的技術(shù),本系統(tǒng)利用JSP技術(shù)、Ajax異步技術(shù)、JavanBean封裝、Bootstrap前端框架等技術(shù)對網(wǎng)頁進(jìn)行制作和設(shè)計,采用Java語言提高了程序編譯速度;利用JavaScript技術(shù)編寫成腳本語言,將其直接嵌套在HTML語言中,在瀏覽器中快速查看結(jié)果;本系統(tǒng)實現(xiàn)了會員制度、賬戶注冊、訂單查詢、書籍查找、書籍管理、用戶信息管理等功能。