曹珍+楊帆
摘 要:SSM 為基于 SpringMvc、Spring 和 Mybatis 的集成框架,是目前較流行的一種 Web 應(yīng)用程序開源框架。為了讓商戶管理者直觀、快捷的對店鋪中的商品、訂單、銷售情況進(jìn)行管理,利用此框架設(shè)計商戶管理平臺,實(shí)現(xiàn)了用戶界面、業(yè)務(wù)管理和數(shù)據(jù)訪問的分離,推進(jìn)店鋪管理的網(wǎng)絡(luò)化和遠(yuǎn)程化。通過介紹搭建平臺所用的集成框架,分析平臺功能需求,以報表與訂單為例,具體說明了平臺的實(shí)現(xiàn)方法。
關(guān)鍵詞:SSM;網(wǎng)絡(luò);集成框架;商戶管理
中圖分類號: TP393 文獻(xiàn)標(biāo)志碼:A
Design and Implementation of Merchant Management Platform Based on SSM Framework
CAO Zhen,YANG Fan
(Wuhan Research Institute of Posts and Telecommunications,Wuhan,Hubei 430070,China)
Abstract:SSM is an integrated framework based on SpringMvc,Spring and Mybatis,also a currently popular open-source web application framework.In order to manage the goods,orders and sales quickly for the owners in the shop,this framework is used to design a merchant management platform.According to this framework,this paper enables the separation of user interface,business management and data access,and promotes remote and networking management of shop.This article describes the integrated framework to build the platform and analyzes the functional structure of the platform.Taking the reports and order as examples,the realization of the platform function is described in detail.
Key words:SSM;web;integrated framework;merchant management;
引 言
隨著信息化和互聯(lián)網(wǎng)技術(shù)的發(fā)展,上網(wǎng)購物逐漸成為了人們生活中的一種習(xí)慣。對于商戶管理者而言,簡單快捷的對商品進(jìn)行管理,直觀、清晰的對相應(yīng)時間段內(nèi)銷量以及銷售額進(jìn)行分析與統(tǒng)計等一系列功能都需要一個完善的商戶管理平臺。本平臺為智慧社區(qū)系統(tǒng)中的一個子系統(tǒng),采用 MVC(Model View Controller,模型—視圖—控制器)模式[1],基于SSM框架設(shè)計實(shí)現(xiàn)了一個簡單、易操作的商戶管理系統(tǒng)。
1 SSM集成框架的應(yīng)用
1.1 SpringMvc框架
Spring MVC是一種基于Java的實(shí)現(xiàn)了Web MVC設(shè)計模式的請求驅(qū)動類型的輕量級Web框架,即使用了MVC架構(gòu)模式的思想,主要分為模型 (Model) 、視圖 (View) 和控制器(Controller) 這 3 部分[2-3],將web層進(jìn)行職責(zé)解耦,基于請求驅(qū)動指的就是使用請求-響應(yīng)模型。
1.2 Spring框架
Spring是一個開源框架,也是一個輕量級的IOC和AOP容器框架,為了解決企業(yè)應(yīng)用程序開發(fā)復(fù)雜性而創(chuàng)建??蚣艿闹饕獌?yōu)勢之一就是其分層架構(gòu),分層架構(gòu)允許選擇使用哪一個組件,同時為 J2EE 應(yīng)用程序開發(fā)提供集成的框架[4-5]。它要求開發(fā)人員對接口進(jìn)行編程,而并非對類進(jìn)行編程。Spring 由一系列定義明確的模塊組成,如反轉(zhuǎn)控制容器、MVC模型、持久層、數(shù)據(jù)訪問對象和遠(yuǎn)程調(diào)用等。Spring 框架是一個松耦合的輕量級框架,框架各部分之間的耦合度低,開發(fā)者可以根據(jù)自身的需要來決定各層次具體框架的選擇[6]。
1.3 Mybatis框架
MyBatis是一款一流的支持自定義SQL、存儲過程和高級映射的持久化框架。MyBatis幾乎消除了所有的JDBC代碼,也基本不需要手工去設(shè)置參數(shù)和獲取檢索結(jié)果。MyBatis能夠使用簡單的XML格式或者注解進(jìn)行來配置[7],能夠映射基本數(shù)據(jù)元素、Map接口和POJOs(普通java對象)到數(shù)據(jù)庫中的記錄。sql寫在xml里,便于統(tǒng)一管理和優(yōu)化。并且提供xml標(biāo)簽,支持編寫動態(tài)sql。與手工操作數(shù)據(jù)庫相比,MyBatis為快速開發(fā)應(yīng)用程序提供了底層的支持。
1.4 集成SSM框架
SSM框架集由SpringMvc、Spring、MyBatis三個開源框架整合而成,常作為數(shù)據(jù)源較簡單的web項目的框架。運(yùn)行流程如下:首先jsp(view)發(fā)送請求,通過核心控制器DispatcherServlet調(diào)用請求解析器:HandlendMapping對請求進(jìn)行解析,通過映射關(guān)系匹配到Controller層[8-9]。然后在控制層調(diào)用業(yè)務(wù)邏輯層(service),數(shù)據(jù)持久層(dao)返回控制層,請求完成獲取一個結(jié)果,設(shè)置一個要跳轉(zhuǎn)的視圖(ModelAndView裝載并傳輸數(shù)據(jù),設(shè)置視圖)。最后核心控制器調(diào)用視圖解析器:ViewResolver解析視圖,匹配相應(yīng)的頁面實(shí)現(xiàn)頁面跳轉(zhuǎn)[10-11]。endprint
SSM框架的各部分模塊耦合度小,方便研發(fā)者對單模塊進(jìn)行開發(fā)和改進(jìn)。也正是因?yàn)轳詈隙刃∵@個特點(diǎn),有利于研發(fā)團(tuán)隊中各個成員工作間的并行開發(fā),極大提高了團(tuán)隊的工作效率[12-13]。SSM框架系統(tǒng)結(jié)構(gòu)如圖1所示:
2 平臺功能分析
本平臺為智慧社區(qū)三大平臺之一的商戶管理平臺,由APP(包括Android 和IOS)及網(wǎng)頁端共同組成。具備小區(qū)通知、優(yōu)惠券管理、訂單處理、商品管理、報表統(tǒng)計等功能。
商戶管理平臺將用戶分為普通店員和店長兩種角色,平臺根據(jù)用戶的級別不同,開放不同的功能權(quán)限[14]。本平臺主要為普通店員提供資訊查看、訂單操作、報表查看以及修改店鋪信息等功能,店長角色擁有普通店員所有功能權(quán)限,除此以外,還具有促銷管理、商品管理等功能。平臺功能結(jié)構(gòu)如圖2所示:
1)資訊。
本模塊的主要功能:查看小區(qū)中水電等重要通知內(nèi)容,查看社區(qū)政務(wù)信息,查看便民黃頁中相關(guān)電話信息。
2)促銷。
本模塊為店長角色所特有,主要功能為:根據(jù)需要添加優(yōu)惠券,設(shè)置優(yōu)惠券的名稱、發(fā)放數(shù)量、可領(lǐng)取時間范圍、可使用時間范圍、最低減免線、減免金額。管理店鋪優(yōu)惠券,可設(shè)置上線、失效以及查看領(lǐng)取張數(shù)、剩余張數(shù)。根據(jù)需求添加和管理廣告位,更換宣傳圖片、查詢廣告位持續(xù)時間等。
3)訂單。
用戶進(jìn)入該模塊后,可對訂單信息進(jìn)行分類查看包括全部訂單、已完成的歷史訂單以及未完成訂單。在業(yè)主平臺購買商品后,商戶需要在本平臺訂單模塊中確認(rèn)接單,進(jìn)行發(fā)貨操作,發(fā)貨后系統(tǒng)會將發(fā)貨消息推送到業(yè)主客戶端,線下由配送員進(jìn)行配送。還可對未完成訂單進(jìn)行退款、退貨操作。
4)商品。
本模塊為店長角色所特有,主要功能為:對需要上架的商品進(jìn)行信息錄入操作,包括商品名稱、規(guī)格、廣告圖、單價、庫存、圖文詳情介紹等,可一鍵設(shè)置熱銷商品,對于已經(jīng)上架的商品可進(jìn)行下架,修改庫存,刪除商品等操作。商品上架后會同步顯示到業(yè)主客戶端,業(yè)主用戶可進(jìn)行購買。
5)報表。
在這一模塊中,用戶可查看一段時間內(nèi)訂單、銷售額以及銷量的統(tǒng)計,以折現(xiàn)圖的形式呈現(xiàn)更加方便直觀。指定時間段可根據(jù)需要自由選擇,平臺會根據(jù)選擇的時間段呈現(xiàn)相應(yīng)的數(shù)據(jù)信息,也可快捷選擇年度、月度、季度時間段。
6)店鋪中心。
店鋪中心模塊中可修改店鋪的基本信息(店名、營業(yè)時間、聯(lián)系電話、店鋪頭像等),還可修改登錄賬號的密碼以及登錄賬號的昵稱等。
3 平臺功能實(shí)現(xiàn)
3.1 開發(fā)工具
本平臺的開發(fā)后端程序使用Java作為該系統(tǒng)的主要編程語言,采用了Eclipse,Tomcat,MySQL,Navicat Premium,SVN等工具。Eclipse作為Java的編碼工具,Apache的Tomcat作為Web服務(wù)器,其中 , MySQL 是目前非常流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng), 具有靈活 、 快速和開源等優(yōu)點(diǎn), Navicat Premium是一款易于使用的圖形化管理MySQL數(shù)據(jù)庫的工具。本平臺由于功能模塊相對較多,由4名成員同時進(jìn)行開發(fā),項目由SVN版本管理系統(tǒng)進(jìn)行管理,能解決多人開發(fā)代碼同步的問題,便于跟蹤歷史修改情況[15-16]。
3.2 數(shù)據(jù)庫設(shè)計
本平臺數(shù)據(jù)庫系統(tǒng)實(shí)體對象如下:用戶、資訊、優(yōu)惠券、優(yōu)惠券詳情、廣告位、訂單、訂單詳情、商品、商品規(guī)格、訂單、訂單詳情和店鋪等。
3.3 訂單處理
用戶在業(yè)主端下單購買商品后,訂單狀態(tài)改變?yōu)榇訂螤顟B(tài),消息實(shí)時推送到商戶手機(jī)客戶端中,此時店鋪管理者需在網(wǎng)頁端或手機(jī)端進(jìn)行接單或者拒絕接單操作,接單成功需進(jìn)行發(fā)貨操作,安排配送人員對商品進(jìn)行配送,此時訂單狀態(tài)變?yōu)橐寻l(fā)貨狀態(tài)。商品送達(dá)客戶手中,客戶點(diǎn)擊收貨則訂單狀態(tài)變?yōu)橐淹瓿?,未點(diǎn)完成的訂單7天后自動變?yōu)橐淹瓿捎唵?。本平臺中的客戶端消息推送工具選用的是XG Push(騰訊信鴿)。后臺將信息進(jìn)行封裝,利用HttpClient向信鴿發(fā)送Post請求[10],由信鴿將信息推送到指定的客戶端中。
3.4 報表生成
報表生成流程如下:首先在前端頁面選擇需要生成報表的數(shù)據(jù)類型(訂單、銷售額或者銷量),前端頁面發(fā)送請求到后臺,后臺從數(shù)據(jù)庫中查詢出相應(yīng)符合條件的數(shù)據(jù),并計算出所呈現(xiàn)折線圖X軸Y軸的坐標(biāo),通過JSON格式傳回前端。前端頁面采用Echarts插件實(shí)現(xiàn)折線圖的顯示。Echarts是一款基于html5的免費(fèi)圖表控件,擁有豐富圖表類型和良好的兼容性速度。界面如圖3所示:
圖3 界面展示
4 結(jié)束語
針對店鋪管理這一問題提出了商戶管理平臺,該平臺采用B/S架構(gòu),提供app端和網(wǎng)頁端服務(wù),實(shí)現(xiàn)了對商品、訂單、報表等一系列業(yè)務(wù)的管理和查看,可供入駐商戶及時有效的管理店鋪。實(shí)現(xiàn)的該系統(tǒng)層次清晰,便于維護(hù),極大的方便了店鋪管理者,同時也體現(xiàn)了SSM集成框架的強(qiáng)大功能。
參考文獻(xiàn)
[1] 張恩麗,張龍翔.基于JavaWeb的在線考試系統(tǒng)設(shè)計與實(shí)現(xiàn)[J].福建電腦,2016,(10):106+148.
[2] 任廣震,侯進(jìn),王獻(xiàn).MVC模式在B/S結(jié)構(gòu)政務(wù)系統(tǒng)的應(yīng)用研究[J].計算機(jī)應(yīng)用與軟件,2014,(08):54-58+74.
[3] 陳琛,韓利凱.基于JavaWeb的博客網(wǎng)的設(shè)計與實(shí)現(xiàn)[J].科技廣場,2013,(08):245-247.
[4] 孫彬.基于SSH框架的現(xiàn)代圖書館管理系統(tǒng)的設(shè)計[J].電子設(shè)計工程,2016,(23):29-31.
[5] 潘飛,徐圣凱.基于SSH框架的智能手表平臺設(shè)計與實(shí)現(xiàn)[J].計算機(jī)與現(xiàn)代化,2017,(02):123-126.
[6] 李洋.SSM框架在Web應(yīng)用開發(fā)中的設(shè)計與實(shí)現(xiàn)[J].計算機(jī)技術(shù)與發(fā)展,2016,(12):190-194.
[7] 王艷清,陳紅.基于SSM框架的智能web系統(tǒng)研發(fā)設(shè)計[J].計算機(jī)工程與設(shè)計,2012,(12):4751-4757.
[8] 宋成明.基于SSM框架整合的高校教師招聘系統(tǒng)[J].辦公自動化,2016,(23):48-50+59.
[9] 肖祥林.基于SSM的畢業(yè)設(shè)計管理系統(tǒng)設(shè)計與實(shí)現(xiàn)[J].電子科技,2016,(10):115-117.
[10] 廖嘉燦,侯超鈞.基于SSM和HttpClient的在線選課輔助系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].計算機(jī)與現(xiàn)代化,2016,(10):116-120+126.
[11] 黃淼,張國平.基于Spring MVC的高校教務(wù)評教系統(tǒng)設(shè)計[J].電子設(shè)計工程,2016,(08):23-26.
[12] 張佳佳,王楊,韓力英.基于SSH+jQuery框架的餐飲Web App的設(shè)計與實(shí)現(xiàn)[J].電子設(shè)計工程,2016,(03):20-22.
[13] 楊靜,華頌文,趙麗萍.基于JavaEE傷口門診患者信息采集系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].計算機(jī)應(yīng)用與軟件,2017,(02):142-146.
[14] 李忠凱,賈年.J2EE的智能小區(qū)物業(yè)管理系統(tǒng)設(shè)計與實(shí)現(xiàn)[J].現(xiàn)代計算機(jī):專業(yè)版,2017,(03):68-73
[15] 周志勇.基于SSM框架的在線共享筆記應(yīng)用系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].電腦知識與技術(shù),2016,(34):129-130.
[16] 宋成明.基于SSM框架整合的高校教師招聘系統(tǒng)[J].辦公自動化,2016,(23):48-50+59.endprint