劉江玲
(湖北文理學(xué)院, 湖北 襄陽 441053)
在圖書銷售過程中,傳統(tǒng)人工圖書銷售管理方式,費時費力,效率低,還有可能出現(xiàn)遺漏偏差。[1-5]隨著計算機技術(shù)的不斷發(fā)展,應(yīng)用軟件迅速普及。計算機管理系統(tǒng)逐步成為趨勢,憑借省時、省力、低錯誤率等一系列優(yōu)點,改變了圖書銷售管理的傳統(tǒng)模式,提高了圖書銷售管理的工作效率。
本文以華文圖書超市為例。華文圖書超市是一家中小型連鎖圖書超市,多年來本著經(jīng)濟、實惠、高服務(wù)質(zhì)量的宗旨,贏得了襄陽市讀者的信賴。然而,華文圖書超市在日常的圖書管理中,面對眾多的圖書和眾多不同需求的顧客,每天都會產(chǎn)生大量的圖書數(shù)據(jù)信息。以傳統(tǒng)的手工方式來處理這些信息,操作繁瑣,效率低下,而且經(jīng)常出現(xiàn)統(tǒng)計失誤。通過圖書銷售管理系統(tǒng)的構(gòu)建,實現(xiàn)圖書超市管理的系統(tǒng)化、規(guī)范化、實用化,對圖書進行統(tǒng)一管理,從根本上改變了圖書銷售管理的傳統(tǒng)模式。該系統(tǒng)能夠解決華文圖書超市在連鎖經(jīng)營過程中的圖書管理需求,提高工作效率,避免資源浪費。
本系統(tǒng)的實現(xiàn)采用當(dāng)前流行的S2SH架構(gòu)模式,其核心思想就是采用分層的設(shè)計思想,使得網(wǎng)站頁面、業(yè)務(wù)邏輯操作和數(shù)據(jù)操作能夠有效地分離,各個層次間的依賴性降低,達到低耦合,每個層次可以按照項目需要自由設(shè)計,而不用考慮其它層次的影響,有利于程序的維護和功能的擴展。
S2SH架構(gòu)通過對復(fù)雜度的簡化使程序結(jié)構(gòu)更加直觀。它的目的是實現(xiàn)一種動態(tài)的程序設(shè)計,并使程序某一部分的重復(fù)利用成為可能。軟件系統(tǒng)通過對自身基本部份分離的同時也賦予了各個基本部分應(yīng)有的功能。S2SH架構(gòu)包括表示層、業(yè)務(wù)層和持久層,如圖1所示。
圖1 S2SH架構(gòu)
Struts2是一個優(yōu)雅的、可擴展的Web框架。Struts2是在WebWork的基礎(chǔ)上發(fā)展而來的,但它不是Strutsl的繼承,和Struts1的區(qū)別很大。Struts框架的核心控制器是StrutsPrepareAndExecuteFilter,該 Filter負責(zé)攔截由<url-pattern>/*</url-pattern>指定的所有用戶請求,當(dāng)用戶請求到達時,它會過濾用戶的請求。當(dāng)請求轉(zhuǎn)入Struts2框架處理時會先經(jīng)過一系列的攔截器,然后再到Action。與Struts1不同的是,Struts2中的Action是線程安全的,因為Struts2對用戶的每一次請求都會創(chuàng)建一個獨立的Action。
Spring為企業(yè)應(yīng)用的開發(fā)提供了一個輕量級的解決方案,它融合了大量的中間層模塊,大大簡化了Web系統(tǒng)的開發(fā)過程。Spring的核心技術(shù)是控制反轉(zhuǎn)(IOC),或者叫依賴注入(DI)和面向方面的編程(AOP)。按照功能,Spring主要包括7個模塊:Spring核心模塊、Spring Context模塊、AOP模塊、Spring DAO模塊、ORM模塊、Spring Web模塊、Spring MVC框架。
Hibernate框架是一個強大的持久層框架,作為ORM技術(shù)的一種解決方案,其目標是利用面向?qū)ο蟮姆椒▉韴?zhí)行數(shù)據(jù)庫操作。Hibernate的實質(zhì)是在業(yè)務(wù)邏輯層和數(shù)據(jù)庫層充當(dāng)橋梁,主要通過持久化類(*.java)、映射文件(*.hbm.xml)、配置文件(Hibernate.cfg.xml)與數(shù)據(jù)庫進行交互。持久化類用于描述數(shù)據(jù)表的結(jié)構(gòu),映射文件指定持久化類與數(shù)據(jù)庫的映射關(guān)系;配置文件用于描述Hibernate的描述信息。Hibernate的運行過程為:應(yīng)用程序先調(diào)用Configration類,該類讀取Hibernate的配置文件及映射文件中的信息,并用這些信息生成一個SessionFactpry對象。然后生成一個Session對象,最后通過Session對象中的方法執(zhí)行加載、保存、更新、刪除等操作。
1.項目環(huán)境:開發(fā)環(huán)境為MyEclipse8.5 JAVA JDK 1.6,WEB服務(wù)器為Tomcat6.0,開發(fā)語言為JAVA,數(shù)據(jù)庫為SQLServer2005,系統(tǒng)架構(gòu)為 B/S架構(gòu)。
2.開發(fā)工具:本系統(tǒng)使用到的開發(fā)工具有:MyEclipse 8.5 和 MySQL 5.0。MyEclipse 8.5 MyE-clipse是一個開放源代碼的可擴展開發(fā)平臺,在Web系統(tǒng)開發(fā)中,可以添加Struts框架、Spring框架和Hibernate框架,最后組成S2SH架構(gòu),提高開發(fā)效率,同時便于系統(tǒng)的后期維護工作。MySQL 5.1 MySQL由于其數(shù)據(jù)庫體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,成為中小型網(wǎng)站數(shù)據(jù)庫的首選。
MyEclipse作為Web系統(tǒng)的開發(fā)工具,支持系統(tǒng)采用S2SH架構(gòu);華文圖書連鎖超市資金少,從經(jīng)濟上考慮可以選擇MySQL數(shù)據(jù)庫,而且MySQL數(shù)據(jù)庫也能夠滿足華文圖書超市數(shù)據(jù)量不是很大的數(shù)據(jù)要求。由于該圖書銷售管理系統(tǒng)的訪問人員主要是圖書超市的銷售人員和管理人員,訪問量也不大,因此,對服務(wù)器的要求并不高。圖書連鎖超市的各個電腦不需要做任何改動,只要能夠滿足上網(wǎng)需要即可,所以,在運行過程中是完全可行的。
經(jīng)過調(diào)查分析,本系統(tǒng)需要實現(xiàn)登錄模塊、系統(tǒng)管理、類別管理、圖書管理、銷售管理、進貨需求等6大功能。
1.用戶登錄:通過登錄模塊進行驗證后,管理員可以進入圖書管理系統(tǒng)。
2.系統(tǒng)管理:①添加管理員信息,②查看管理員信息,③修改密碼。
3.類別管理:①添加類別信息,②查看圖書類別信息,③修改圖書類別信息。
4.圖書管理:①添加圖書,②查看圖書,③修改圖書信息,④高級查詢,⑤查看庫存。
5.銷售管理:①查看銷售明細,②查看當(dāng)日銷售明細,③銷售排行。
6.進貨管理:①添加進貨,②查看進貨。
1.時間特性:在圖書銷售過程中,系統(tǒng)的響應(yīng)時間要小,一般要在2秒內(nèi)得到響應(yīng)。
2.易用性:由于華文圖書連鎖超市的銷售管理人員計算機水平不是很高,系統(tǒng)用戶界要簡單易用。
3.穩(wěn)定性:系統(tǒng)的穩(wěn)定性很重要,否則,會影響正常銷售,所以必須保證系統(tǒng)的穩(wěn)定運行。
本圖書銷售管理系統(tǒng)部署在Web服務(wù)器上,華文圖書連鎖超市只要能夠上Internet就可以訪問該系統(tǒng)。系統(tǒng)工作原理如圖2所示。
圖2 系統(tǒng)工作原理圖
1.登錄模塊:進入登錄界面之后,輸入用戶名和密碼,單擊“登錄”按鈕,即可進入圖書銷售管理系統(tǒng)頁面。在輸入密碼時顯示為“*”,有利于用戶的密碼安全。單擊“退出系統(tǒng)”按鈕,可以退出圖書銷售管理系統(tǒng)。
2.系統(tǒng)管理模塊:在該模塊,超級管理員對管理員賬戶進行管理,在必要時對系統(tǒng)進行初始化操作。
(1)添加管理員信息。超級管理員可以添加新的管理員,如圖3所示。
圖3 添加管理員信息頁面
(2)查看管理員信息。超級管理員可以查看所有的管理員信息,并可以刪除辭去職務(wù)的管理員。如圖4所示。
圖4 查看管理員信息頁面
(3)修改密碼。管理員可以在該頁面修改自己的密碼。修改密碼時,需要提供正確的舊密碼,否則不能修改。如圖5所示。
圖5 修改密碼頁面
3.類別管理模塊:類別管理模塊是對圖書類別信息進行管理,包括對圖書類別的增加、刪除、修改、查看和統(tǒng)計等。
(1)添加類別信息。管理員可以通過該功能將圖書類別添加到數(shù)據(jù)庫,如圖6所示。
圖6 添加圖書類別頁面
(2)查看圖書類別信息。管理員可以在該頁面查看圖書類別信息,也可以對圖書類別執(zhí)行修改和刪除。如圖7所示。
圖7 查看圖書類別頁面
(3)修改圖書類別信息。管理員可以通過該頁面修改圖書類別信息,如圖8所示。
圖8 修改圖書類別信息頁面
(4)類別統(tǒng)計。管理員可以對圖書的類別信息進行統(tǒng)計,為了方便查看,在這里以餅形圖的方式顯示。類別的餅形圖,統(tǒng)計結(jié)果如圖9所示。
圖9 類別統(tǒng)計頁面
4.圖書管理模塊:在該模塊,管理員可以對圖書進行添加、刪除、修改和查詢操作。
(1)添加圖書。管理員可以通過該功能將圖書添加到數(shù)據(jù)庫,如圖10所示。
圖10 添加圖書編碼頁面
(2)查看圖書。管理員能夠查看圖書的全部信息,可以對圖書進行模糊查詢;單擊“圖書名稱”,可以進入圖書的詳細信息頁面;單擊“修改”,可以進入修改圖書信息頁面。如圖11所示。
圖11 商品管理頁面
(3)圖書詳細信息。管理員可以在該頁面查看圖書的詳細信息,如圖12所示。
圖12 圖書詳細信息頁面
(4)修改圖書信息。管理員可以在該頁面修改圖書的詳細信息,需要注意的是,圖書編碼信息不可以修改。如圖13所示。
圖13 商品查詢結(jié)果頁面
(5)高級查詢。管理員可以在該頁面輸入圖書的任意信息進行查詢,如圖14所示。
圖14 高級查詢頁面
(6)查看庫存。管理員可以在該頁面查看符合庫存數(shù)量的圖書信息,如圖15所示。
圖15 查看庫存頁面
5.購買圖書模塊:在該模塊,管理員對消費者購買的圖書進行操作。當(dāng)用戶購買一本圖書時,先將其放在購物車中,接著可以選購其它圖書,當(dāng)選擇完成后,可以對購買的圖書一起結(jié)賬。
(1)選購圖書。在選購圖書頁面,可以查看圖書信息??梢詥螕簟皥D書名稱”查看圖書的詳細信息。如果滿意,可以單擊“購買”進入購買頁面購買圖書。如圖16所示。
圖16 訂單管理頁面
(2)購買圖書。管理員在該頁面輸入客戶購買的數(shù)量,然后單擊“提交”數(shù)據(jù)即完成購買。如圖17所示。
圖17 購買圖書頁面
(3)查看選購信息。在該頁面,管理員可以查看客戶購買的圖書信息。可以刪除客戶不滿意的商品,也可以清空購買的圖書信息,也可以繼續(xù)購買圖書。如果滿意購買的圖書,可以單擊“結(jié)賬”按鈕結(jié)賬,同時情況客戶的訂單信息。如圖18所示。
圖18 訂單詳細信息頁面
6.銷售管理模塊:在該模塊,管理員可以查看圖書的銷售明細信息,包括歷史明細和當(dāng)日明細,還可以查看圖書的銷售排行。
(1)查看銷售明細。管理員可以查看圖書超市的銷售明細記錄,包括銷售圖書的名稱、單價、數(shù)量、金額、銷售時間等信息,也可以輸入關(guān)鍵字進行模糊查詢。如圖19所示。
圖19 銷售明細頁面
(2)查看當(dāng)日銷售明細。管理員可以查看當(dāng)日圖書超市的銷售明細記錄,包括銷售圖書的名稱、單價、數(shù)量、金額、銷售時間等信息,也可以輸入關(guān)鍵字進行模糊查詢。如圖20所示。
圖20 當(dāng)日銷售明細頁面
(3)日期查詢。在該頁面,管理員可以輸入起始日期或結(jié)束日期后,按照銷售日期進行查詢。如圖21所示。
圖21 日期查詢頁面
(4)銷售排行。在該頁面,管理員可以查看圖書的銷售排行記錄,可以查看圖書的詳細信息,也可以對銷售好的圖書執(zhí)行進貨操作。如圖22所示。
圖22 銷售排行頁面
7.進貨/需求管理模塊:在該模塊,管理員可以添加進貨,查看進貨信息。
(1)添加進貨。管理員根據(jù)實際的顧客需求信息,輸入進貨的數(shù)量,提交即可。如圖23所示。
圖23 銷售明細頁面
(2)查看進貨。在該頁面,管理員可以查看進貨信息,如果需要修改,可以進入修改頁面修改進貨數(shù)量;如果沒有問題,單擊“進貨完成”即可完成進貨操作。如圖24所示。
圖24 當(dāng)日銷售明細頁面
軟件測試就是在一個軟件開發(fā)完成后,準備部署運行前,對軟件需求分析、設(shè)計規(guī)格說明和編碼的最終審核檢驗,是保證軟件開發(fā)質(zhì)量的關(guān)鍵。它是軟件開發(fā)過程的重要組成部分,其目的是用來確認軟件是否符合開發(fā)要求,軟件是否存在bug,系統(tǒng)運行是否穩(wěn)定。本系統(tǒng)參照實際運行的環(huán)境來搭建測試環(huán)境,對系統(tǒng)在用戶登錄、系統(tǒng)管理、類別管理、圖書管理、銷售管理、進貨需求等方面進行了系統(tǒng)測試。查看測試結(jié)果是否和系統(tǒng)設(shè)計的預(yù)期一致,對于結(jié)果不一致的地方進行修改,并做好修改記錄。
[1]陳淵.基于AJAX的網(wǎng)上圖書銷售管理系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2010.
[2]譚銳.基于VFP的圖書銷售管理系統(tǒng)的設(shè)計與開發(fā)[J].三峽大學(xué)學(xué)報,2005(1):221-223.
[3]李姍.基于Ajax的網(wǎng)上圖書銷售管理系統(tǒng)的設(shè)計與實現(xiàn)[D].南昌:南昌大學(xué),2010.
[4]夏勇.出版社資源管理系統(tǒng)的設(shè)計與實現(xiàn)[D].長沙:湖南大學(xué),2007.
[5]陳弘.基于B/S方式的圖書銷售系統(tǒng)的設(shè)計與實現(xiàn)[J].長沙大學(xué)學(xué)報,2000(4):56-57.