文/劉美枝 楊磊
隨著近年來,高校學(xué)生在日常學(xué)習(xí)生活中關(guān)注的信息也越來越多,如圖書借閱、駕照考試、兼職招聘、快遞收發(fā)等等。而傳統(tǒng)的校園服務(wù)大多通過網(wǎng)站或者固定終端向?qū)W生提供服務(wù),但確沒有一個(gè)好的信息整合平臺(tái),使很多學(xué)生無法便捷準(zhǔn)確地捕捉到這些信息,而且隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,人們?cè)絹碓搅?xí)慣使用移動(dòng)設(shè)備來瀏覽這些信息。因此通過移動(dòng)互聯(lián)網(wǎng)技術(shù)對(duì)這些校園服務(wù)資源信息進(jìn)行分類、整合,建立一個(gè)移動(dòng)端校園綜合服務(wù)系統(tǒng)是很有必要的。本文基于上述分析來設(shè)計(jì)開發(fā)一個(gè)基于微信公眾號(hào)平臺(tái)的校園綜合服務(wù)系統(tǒng)。通過對(duì)該網(wǎng)站的使用,校園服務(wù)提供商可以得到精確的客流引導(dǎo),節(jié)省成本,提高效率;學(xué)生也可以得到有效的信息,進(jìn)而提高信息轉(zhuǎn)化率。
高校學(xué)生日常訪問信息,涉及教務(wù)查詢、學(xué)生服務(wù)、周邊社會(huì)資源等多個(gè)領(lǐng)域,根據(jù)學(xué)生訪問頻次,本文所述系統(tǒng)按照功能結(jié)構(gòu)主要分為二手書買賣、快遞收發(fā)、兼職招聘、校園服務(wù)、新聞早知道五大模塊。用戶通過微信公眾號(hào)注冊(cè)登錄后進(jìn)入系統(tǒng)首頁,系統(tǒng)首頁展示網(wǎng)站所包含各模塊,并可以正常跳轉(zhuǎn)至每一個(gè)模塊,在移動(dòng)終端上能夠良好顯示,操作簡(jiǎn)單明了。并且開發(fā)各板塊所需要的管理后臺(tái),便于對(duì)網(wǎng)站服務(wù)和網(wǎng)站信息進(jìn)行相應(yīng)的修改,系統(tǒng)總體框架如圖1所示。
本設(shè)計(jì)以window為開發(fā)環(huán)境,前端采用jQuery和JSTL技術(shù)作為前端頁面技術(shù)支撐,后端采用以Java語言為基礎(chǔ)的,Spring + Spring MVC + Mybatis + dubbo技術(shù)作為后端服務(wù)技術(shù)支撐,服務(wù)器端采用Tomcat為web容器,數(shù)據(jù)庫采用MySQLl。
開發(fā)過程中使用IDEA為語言編寫開發(fā)工具,PowerDesigner為數(shù)據(jù)庫建模工具,Navicat為數(shù)據(jù)庫調(diào)試工具,Chrome為系統(tǒng)訪問工具。
采用B/S架構(gòu)(瀏覽器/服務(wù)器)模式,以訪問數(shù)據(jù)服務(wù)器為中心,HTTP協(xié)議為傳輸協(xié)議,客戶端通過瀏覽器訪問服務(wù)端web服務(wù)器和數(shù)據(jù)庫服務(wù)器(本網(wǎng)站的web服務(wù)器和數(shù)據(jù)庫服務(wù)器目前在單臺(tái)機(jī)器上,未分布式部署,故二者可以視為一臺(tái)服務(wù)器)。
采用MVC模式和三層架構(gòu),MVC分別為Model模型,View視圖,Controller控制器,三層架構(gòu)分為視圖層,服務(wù)層,數(shù)據(jù)層,綜合使用,本系統(tǒng)將軟件總體分為五層,視圖層,控制層,邏輯接口層,邏輯實(shí)現(xiàn)層,數(shù)據(jù)層。其中:

表1:系統(tǒng)部分測(cè)試用例

圖1:系統(tǒng)總體結(jié)構(gòu)

圖2:校園綜合服務(wù)系統(tǒng)數(shù)據(jù)ER圖
視圖層,用戶可以看到并與之交互的界面。在一般的WEB應(yīng)用中,視圖由HTML頁面展示。在本項(xiàng)目中,采用JSP頁面展示。用戶通過該層與系統(tǒng)發(fā)生交互,向服務(wù)端控制層發(fā)送請(qǐng)求,并接收服務(wù)端控制層返回來的響應(yīng)。
控制層,整個(gè)MVC的核心,接收由視圖層發(fā)送過來的用戶請(qǐng)求,并對(duì)其進(jìn)行邏輯業(yè)務(wù)的處理分發(fā),或者繼續(xù)向模型層發(fā)送請(qǐng)求,或者返回?cái)?shù)據(jù)。與此同時(shí),接收模型層返回的數(shù)據(jù),經(jīng)過模型渲染后,返回給視圖層供前端獲取并對(duì)其進(jìn)行相應(yīng)的處理。
邏輯層,通過對(duì)控制層的請(qǐng)求進(jìn)行處理,系統(tǒng)的主要業(yè)務(wù)邏輯都在此完成,通過對(duì)數(shù)據(jù)層模型的調(diào)用,獲得控制層想要的數(shù)據(jù),并將其返回給控制層。
數(shù)據(jù)層,其內(nèi)包含多個(gè)數(shù)據(jù)模型,如java bean,數(shù)據(jù)層擁有最多的數(shù)據(jù)處理任務(wù),并將數(shù)據(jù)返回給邏輯層。它采用java bean等構(gòu)建對(duì)象,進(jìn)而與數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行交互,且數(shù)據(jù)模型和數(shù)據(jù)格式無關(guān),這樣就使一個(gè)模型能為多個(gè)視圖提供數(shù)據(jù),減少了代碼的重復(fù)與冗余,提高了代碼的復(fù)用性。
根據(jù)功能結(jié)構(gòu)模塊需求,我們先對(duì)數(shù)據(jù)庫表結(jié)構(gòu)及其關(guān)系進(jìn)行設(shè)計(jì),其中包含用戶表,數(shù)據(jù)買賣登記表,書籍表,新聞早知道表,快遞收發(fā)表,校園兼職記錄表,校園服務(wù)表。針對(duì)本系統(tǒng)數(shù)據(jù)量相對(duì)較小,對(duì)實(shí)時(shí)要求高的特點(diǎn),數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫來實(shí)現(xiàn),各表之間的關(guān)聯(lián)關(guān)系如圖2所示。
本系統(tǒng)的測(cè)試環(huán)境為一臺(tái)阿里云服務(wù)器、多臺(tái)手機(jī),軟件運(yùn)行環(huán)境為L(zhǎng)inux Centos7系統(tǒng),JDK-8,Tomcat,MySQL等。分別采用白盒和黑盒兩種測(cè)試方式來測(cè)試程序運(yùn)行情況,測(cè)試內(nèi)容主要是系統(tǒng)功能測(cè)試,按照測(cè)試文檔和測(cè)試用例分別對(duì)各模塊中的功能進(jìn)行測(cè)試,部分測(cè)試用例如表1,進(jìn)而保證系統(tǒng)功能完善,運(yùn)行可靠。
在分析目前高校學(xué)生日常生活需求的基礎(chǔ)上,設(shè)計(jì)一個(gè)移動(dòng)端校園綜合服務(wù)系統(tǒng)。文中分別闡述了系統(tǒng)的需求、軟件架構(gòu)以及數(shù)據(jù)庫設(shè)計(jì),實(shí)現(xiàn)了一種可以通過手機(jī)微信公眾號(hào)注冊(cè)登錄、操作簡(jiǎn)捷、用戶交互良好、運(yùn)行穩(wěn)定、功能完善的校園綜合服務(wù)系統(tǒng),對(duì)學(xué)生日常學(xué)習(xí)生活有很大的實(shí)用性,使學(xué)生可以一站式閱覽校園相關(guān)信息,并享受學(xué)校周邊服務(wù),在一定程度上彌補(bǔ)了傳統(tǒng)校園服務(wù)方式的空白,具有良好的實(shí)用價(jià)值。