高笛煙 黃澤豪 張棟
摘要:科技進(jìn)步讓系統(tǒng)開(kāi)發(fā)成為普遍關(guān)注的重點(diǎn)。文章針對(duì)計(jì)算機(jī)配件價(jià)格查詢微信小程序的開(kāi)發(fā)進(jìn)行設(shè)計(jì),內(nèi)容包括研究背景及現(xiàn)狀簡(jiǎn)要討論,并對(duì)研究目的進(jìn)行了分析,對(duì)方案中涉及的功能、系統(tǒng)結(jié)構(gòu)和數(shù)據(jù)庫(kù)等相關(guān)設(shè)計(jì)項(xiàng)目進(jìn)行討論。研究利用了B/S結(jié)構(gòu),并且還在其中適用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),基于Java和MySQL完成整個(gè)方案設(shè)計(jì)工作。該系統(tǒng)能夠基于用戶需求目標(biāo)能夠提供的功能較為齊全,從登錄注冊(cè)到配件分類與信息管理等全面覆蓋。在完成設(shè)計(jì)以及測(cè)試之后,運(yùn)行穩(wěn)定且操作方便快捷,能滿足廣大用戶使用的基本要求。
關(guān)鍵詞:計(jì)算機(jī)配件價(jià)格查詢;微信小程序;Java;MySQL數(shù)據(jù)庫(kù)
中圖分類號(hào):TP311? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2022)25-0049-04
開(kāi)放科學(xué)(資源服務(wù)) 標(biāo)識(shí)碼(OSID) :
1 引言
隨著科技的快速發(fā)展,計(jì)算機(jī)成為新時(shí)代發(fā)展不可缺少的實(shí)用工具。一般來(lái)說(shuō),市場(chǎng)中已經(jīng)配備好的計(jì)算機(jī)是大多數(shù)用戶的首選,但是對(duì)于計(jì)算機(jī)的配件,也需要進(jìn)行一定的了解,明白其價(jià)格,不僅可以在更換零件時(shí)可以給予人們很大的幫助,對(duì)于在自主選購(gòu)計(jì)算機(jī)時(shí),也可以在對(duì)比零件價(jià)格的差異時(shí)起到節(jié)約成本的作用。
該項(xiàng)目在Java技術(shù)、MySQL技術(shù)的支持下完成了對(duì)該系統(tǒng)的開(kāi)發(fā),實(shí)現(xiàn)了計(jì)算機(jī)配件價(jià)格查詢管理的信息化,使用戶體驗(yàn)到更優(yōu)秀的計(jì)算機(jī)配件價(jià)格查詢微信小程序,而管理員管理操作也將更加方便,從而實(shí)現(xiàn)期望的目標(biāo)。
2 需求分析
當(dāng)今社會(huì)科技不斷進(jìn)步與發(fā)展,各行各業(yè)都向數(shù)字化轉(zhuǎn)型方向進(jìn)步,世界上計(jì)算機(jī)的用戶量也在飛速增長(zhǎng),伴隨而來(lái)的則是計(jì)算機(jī)相關(guān)問(wèn)題的成倍增長(zhǎng)。若能清楚地了解到計(jì)算機(jī)零件配件價(jià)格,在對(duì)配件零件進(jìn)行更換時(shí)將會(huì)大大節(jié)約成本。該項(xiàng)目針對(duì)的是那些對(duì)于計(jì)算機(jī)零件更換有需求的用戶群體,目的是讓客戶隨時(shí)隨地能了解計(jì)算機(jī)配件的相關(guān)價(jià)格,讓他們可以按照自己的需求做出相應(yīng)的選擇。而在此開(kāi)發(fā)目的的基礎(chǔ)上,該項(xiàng)目首先將其分為兩個(gè)部分的模塊,一個(gè)為管理員模塊,另一個(gè)是用戶模塊。
微信小程序的運(yùn)作流程為:系統(tǒng)啟動(dòng),進(jìn)入登錄界面,登錄系統(tǒng)后可瀏覽主頁(yè)面。用戶通過(guò)注冊(cè)后登錄系統(tǒng),即可進(jìn)行配件查詢,修改個(gè)人資料等操作,管理員登錄系統(tǒng)后,可以對(duì)用戶、配件信息、配件分類進(jìn)行管理。主要系統(tǒng)基本功能流程圖如圖1所示。
2.1 管理員模塊
登錄功能:管理員是保證整個(gè)系統(tǒng)功能完整的主要角色,所以其賬號(hào)和密碼是預(yù)先設(shè)置的,在登錄界面輸入并點(diǎn)擊登錄即可完成登錄操作。
1) 用戶管理功能:管理員登錄成功后,可以檢測(cè)與管理所有用戶的信息,例如:增加或刪除某個(gè)用戶,查看某用戶的賬號(hào)密碼等操作。
2) 配件分類管理功能:對(duì)配件進(jìn)行分類處理,即對(duì)同一品牌的不同計(jì)算機(jī)配件根據(jù)配件類別進(jìn)行分類使其更加方便篩選的操作。
3) 配件信息管理功能:管理員可以對(duì)配件信息進(jìn)行相應(yīng)的描述和修改,例如修改配件的價(jià)格、生產(chǎn)品牌廠家和圖片封面等,達(dá)到及時(shí)更新配件信息的目的。
2.2 用戶模塊
1) 注冊(cè)功能:用戶通過(guò)注冊(cè)獲得系統(tǒng)的登錄權(quán)限。
2) 登錄功能:用戶通過(guò)登錄進(jìn)入小程序首頁(yè)后,在首頁(yè)即可進(jìn)行配件查詢、個(gè)人信息修改等操作。
3) 查詢功能:用戶在小程序首頁(yè)可以點(diǎn)擊配件圖片進(jìn)行配件進(jìn)行查詢,也可以從首頁(yè)的搜索框指定配件名稱進(jìn)行搜索。
4) 個(gè)人信息修改功能:用戶登錄小程序后,點(diǎn)擊“我的”,即個(gè)人中心。用戶在該頁(yè)面可以對(duì)自己的個(gè)人賬戶信息進(jìn)行查看、修改和刪除操作。
3 開(kāi)發(fā)涉及語(yǔ)言及技術(shù)
3.1 Java語(yǔ)言
Java語(yǔ)言作為一門計(jì)算機(jī)語(yǔ)言,其高度適應(yīng)當(dāng)前移動(dòng)互聯(lián)網(wǎng)環(huán)境,有著突出優(yōu)勢(shì)并展現(xiàn)出其廣泛適用性特點(diǎn),它是分布式的,同時(shí)也保持著相當(dāng)動(dòng)態(tài)性。分布式的特點(diǎn)主要體現(xiàn)在了兩個(gè)方向,一個(gè)是數(shù)據(jù),一個(gè)是操作,它能夠有效融入并結(jié)合TCP/IP協(xié)議,同時(shí)在計(jì)算框架結(jié)構(gòu)上也支持客戶機(jī)/服務(wù)器。而動(dòng)態(tài)性特點(diǎn),指的是類的安裝,其處理是在運(yùn)行時(shí)進(jìn)行的,這意味著該語(yǔ)言下開(kāi)發(fā)的程序能夠一定程度實(shí)現(xiàn)動(dòng)態(tài)維護(hù)。因此總體來(lái)說(shuō)具有低平臺(tái)關(guān)聯(lián)性、較為突出的安全性,同時(shí)在穩(wěn)健性等方面值得關(guān)注[1]。開(kāi)發(fā)者評(píng)價(jià)其是只需要“一次編譯”就能夠?qū)崿F(xiàn)并做到“到處執(zhí)行”[2]。Java語(yǔ)言不僅編程時(shí)間短且具有非常高的兼容與功能性。它整體的語(yǔ)言特性具有面向?qū)ο蟆⑵脚_(tái)無(wú)關(guān)性、多線程性[3]、可靠性和安全性等特點(diǎn)。
3.2 微信開(kāi)發(fā)者工具
在傳統(tǒng)Web瀏覽器,其頁(yè)面呈現(xiàn)的流程是先運(yùn)行HTML頁(yè)面,之后再對(duì)視圖層HTML和CSS進(jìn)行運(yùn)行,接下來(lái)就進(jìn)入邏輯層的Java Script并進(jìn)行運(yùn)行,接著就是數(shù)據(jù)返回且能夠通過(guò)實(shí)現(xiàn)最后的頁(yè)面展現(xiàn)工作[4]。而微信開(kāi)發(fā)者工具與其不同,它是建立在Native System之上的,因此能夠?qū)崿F(xiàn)視圖層和邏輯層在同一處理時(shí)間段內(nèi)加載,這種模式大大提高了頁(yè)面響應(yīng)速度,讓用戶使用更快捷。它不僅能模擬微信客戶端,還能在電腦上調(diào)試制作網(wǎng)頁(yè)。頁(yè)面清晰明了,易用性突出,能夠?qū)⒃谄渖系木W(wǎng)頁(yè)進(jìn)行方便且安全的運(yùn)維或調(diào)試,還能夠完成多樣化功能,如編譯處理、本地文件同步等。
3.3 B/S架構(gòu)
B/S結(jié)構(gòu)是目前使用最廣泛的結(jié)構(gòu)模式,只要提供常用瀏覽器,還有一個(gè)預(yù)裝好的數(shù)據(jù)庫(kù)即可,通過(guò)該結(jié)構(gòu)二者就能夠?qū)崿F(xiàn)信息連接,進(jìn)而完成很多工作。它不但能讓系統(tǒng)的開(kāi)發(fā)更加簡(jiǎn)單,易操作,而且還能夠?qū)ζ溥M(jìn)行維護(hù)。該結(jié)構(gòu)能夠連接到網(wǎng)絡(luò)的計(jì)算機(jī)并直接利用,不需要提供其他維護(hù)處理或類似前期工作[5],且該結(jié)構(gòu)下運(yùn)行的軟件數(shù)據(jù)庫(kù)都是分離的,因此安全性高,能夠清楚把握所有正在進(jìn)行的系統(tǒng)操作或業(yè)務(wù),因此一旦出現(xiàn)任何變故或事件,管理員能夠即刻做出反應(yīng),有效降低用戶受損程度。而其管理模式是集中式的,因此用戶使用此系統(tǒng)在生成數(shù)據(jù)后就可以將這些數(shù)據(jù)存儲(chǔ)到系統(tǒng)的數(shù)據(jù)庫(kù)中,方便以后使用,滿足人們的需求。主要結(jié)構(gòu)圖如圖2所示。
3.4 MySQL數(shù)據(jù)庫(kù)
MySQL適配多數(shù)操作系統(tǒng),且在功能上還能夠與PHP關(guān)聯(lián),能夠融入多種API函數(shù),從而能夠適用不同類型的數(shù)據(jù)語(yǔ)言如C++等;提供多線程支持并且該種支持能夠通過(guò)核心線程運(yùn)行來(lái)進(jìn)行;不僅提供兩種存儲(chǔ)機(jī)制;還能夠具備多重許可。相對(duì)于大型的數(shù)據(jù)庫(kù)來(lái)說(shuō)比較容易讓用戶上手使用,支持SQL和網(wǎng)絡(luò)、可移植性強(qiáng)以及總體擁有成本低等特點(diǎn)[6]。它是開(kāi)放環(huán)境,因此付出成本可以忽略不計(jì),同時(shí)體積小,因此只要內(nèi)部結(jié)構(gòu)合理且具有較快速度[7]。此外它還具有多線程優(yōu)點(diǎn),能夠基于有限系統(tǒng)資源實(shí)現(xiàn)更為快速的系統(tǒng)效率,且跨數(shù)據(jù)庫(kù)連接,也提供了多種不同連接路徑,包括TCP/IP、JDBC等。但MySQL也有不足,其功能范圍并不算大,且規(guī)模也僅適用一些小程序,無(wú)法適用大數(shù)據(jù)庫(kù)環(huán)境,但是由于該系統(tǒng)是一個(gè)微小型的程序,該數(shù)據(jù)庫(kù)性能功能已經(jīng)足以應(yīng)對(duì),且還提供了二次開(kāi)發(fā)空間。
3.5 SSM框架
開(kāi)發(fā)信息管理系統(tǒng)的主流框架是SSM(Spring + Spring MVC + MyBatis) ,SSM框架Web層使用Spring MVC框架,使傳輸前后端數(shù)據(jù)變得簡(jiǎn)單[8]。頁(yè)面發(fā)送請(qǐng)求給控制器(進(jìn)入 SpringMVC 范圍) ,控制器調(diào)用業(yè)務(wù)層處理邏輯,邏輯層向持久層發(fā)送請(qǐng)求,持久層與數(shù)據(jù)庫(kù)交互(MyBatis 起作用) 后,將結(jié)果返回給業(yè)務(wù)層,業(yè)務(wù)層將處理邏輯發(fā)送給控制器,控制器再調(diào)用視圖展現(xiàn)數(shù)據(jù)(SpringMVC起作用) 。在此過(guò)程中,Spring 作為一個(gè)容器,將整個(gè)過(guò)程都囊括進(jìn)去[9]。對(duì)于業(yè)務(wù)層使用Spring作為輕量級(jí)控制反轉(zhuǎn)和面向切面的容器框架;對(duì)于相關(guān)SQL操作,采用MyBatis作為持久層框架,對(duì)JDBC進(jìn)行封裝,使得數(shù)據(jù)庫(kù)的底層面向開(kāi)發(fā)者操作處于一種透明狀態(tài)。
4 系統(tǒng)功能設(shè)計(jì)
4.1 登錄與注冊(cè)管理
1) 登錄
用戶首次登錄需要注冊(cè)新賬號(hào)作為自己的初始新賬號(hào)。在下一次登錄時(shí),將登錄頁(yè)面填入的信息與數(shù)據(jù)庫(kù)中保存的信息進(jìn)行對(duì)比,通過(guò)后端返回值驗(yàn)證是否允許登錄。
2) 注冊(cè)
用戶首先需要填寫自己的相關(guān)信息,例如姓名,性別,聯(lián)系方式等,并初始化密碼和用戶名,如果填寫的內(nèi)容符合系統(tǒng)設(shè)置的要求,點(diǎn)擊注冊(cè)按鈕。系統(tǒng)將會(huì)在數(shù)據(jù)庫(kù)中添加相關(guān)信息,并且進(jìn)行保存,顯示注冊(cè)成功,結(jié)束注冊(cè)流程。
4.2 配件信息管理
1) 查詢配件信息
配件信息查詢的方式有兩種,第一種是點(diǎn)擊小程序端首頁(yè)圖片可進(jìn)行配件查詢,第二種是點(diǎn)擊搜索框搜索實(shí)現(xiàn)配件查詢。在配件信息頁(yè)面可以完成對(duì)配件詳情信息的查看,包括名稱、品牌、更新時(shí)間、點(diǎn)擊次數(shù)、配件詳情等信息,并根據(jù)需要進(jìn)行收藏操作。
2) 修改配件信息
用戶不能進(jìn)行此操作,這個(gè)功能是相對(duì)于管理員進(jìn)行開(kāi)放的[10]。管理員登錄后,可對(duì)系統(tǒng)中的配件信息進(jìn)行管理,即修改配件信息簡(jiǎn)介、價(jià)格、生產(chǎn)廠家等。
4.3 個(gè)人信息管理
1) 查詢個(gè)人信息
用戶在登錄后,在首頁(yè)點(diǎn)擊“我的”即可進(jìn)入個(gè)人信息管理界面。用戶需要查看自己的個(gè)人信息或收藏就需要進(jìn)入到個(gè)人信息管理中心查看。部分代碼如圖3所示:
2) 修改個(gè)人信息
用戶正在登錄后,如果用戶需要修改密碼或者個(gè)人信息數(shù)據(jù),可以直接在個(gè)人信息管理界面選擇想要修改的信息,并進(jìn)行提交就可以直接完成修改。
4.4 后臺(tái)管理
1) 用戶信息管理
管理員登錄系統(tǒng)后,就可以擁有用戶信息的相關(guān)管理權(quán)限,例如進(jìn)行刪除用戶和查詢用戶信息等操作。
2) 配件管理
管理員在登錄后,為方便管理和用戶對(duì)配件進(jìn)行查找,管理員在添加配件時(shí)需要對(duì)配件進(jìn)行分類,按不同的類別對(duì)配件實(shí)施分類管理,例如不同品牌的外設(shè)鍵盤同屬于鍵盤類別,將其歸到同一類中,這類信息需要管理員把控實(shí)時(shí)更新。
4.5 數(shù)據(jù)庫(kù)管理
計(jì)算機(jī)配件價(jià)格查詢微信小程序的數(shù)據(jù)庫(kù)系統(tǒng)由兩個(gè)主要部分構(gòu)成,即配件信息和用戶信息。主要是通過(guò)MySQL數(shù)據(jù)庫(kù)技術(shù)管理軟件建立數(shù)據(jù)表,從而實(shí)現(xiàn)了對(duì)于這些信息的統(tǒng)一管理。數(shù)據(jù)庫(kù)中存放了所有系統(tǒng)相關(guān)的數(shù)據(jù)信息,構(gòu)建數(shù)據(jù)庫(kù)最重要的一步就是進(jìn)行表的創(chuàng)建,該系統(tǒng)的設(shè)計(jì)中大概分為九個(gè)表:用戶表、管理員表、token表、收藏表、配件信息表、配件分配表、行業(yè)資訊表、配件信息評(píng)論表和配置文件表。表格內(nèi)容詳情如表1所示。
5 系統(tǒng)測(cè)試
對(duì)于該系統(tǒng)的登錄、注冊(cè)、配件查詢、個(gè)人信息修改、用戶管理等功能都進(jìn)行相應(yīng)的用例測(cè)試,測(cè)試結(jié)果均為通過(guò)。此外,對(duì)該系統(tǒng)進(jìn)行了性能測(cè)試,在運(yùn)行速度、網(wǎng)絡(luò)響應(yīng)時(shí)間和支持并發(fā)節(jié)點(diǎn)數(shù)方面都進(jìn)行了相應(yīng)的測(cè)試,不僅在性能不同的電腦上進(jìn)行測(cè)試,都能夠有效運(yùn)行,滿足卡頓和滯后等方面要求,而且在局域網(wǎng)內(nèi)部最小、最大和均相應(yīng)速度達(dá)到:1/2/5s,在局域網(wǎng)外,此三項(xiàng)數(shù)值達(dá)到3/7/12s,符合用戶預(yù)期,此外在測(cè)試并發(fā)節(jié)點(diǎn)狀態(tài)下持續(xù)運(yùn)行了45個(gè)小時(shí),其間網(wǎng)絡(luò)反應(yīng)速度有一些波動(dòng),總體延遲能夠達(dá)到預(yù)期要求,最后數(shù)據(jù)約為10s。系統(tǒng)總體達(dá)到預(yù)期效果和用戶要求,實(shí)現(xiàn)了多配置計(jì)算機(jī)系統(tǒng)下較為快速的運(yùn)行,安全性較高,且提供了二次開(kāi)發(fā)接口,便于之后功能調(diào)整,故系統(tǒng)整體性能符合前期確定的要求與目標(biāo)。
6 結(jié)束語(yǔ)
“計(jì)算機(jī)配件價(jià)格查詢微信小程序”項(xiàng)目除了能夠使用戶體驗(yàn)到網(wǎng)絡(luò)帶來(lái)的方便,不僅能瀏覽首頁(yè),獲得配件和業(yè)內(nèi)的一些信息,同時(shí)還包括個(gè)人中心、后臺(tái)管理等多項(xiàng)功能,方便查詢。該系統(tǒng)功能模塊基本齊全,界面優(yōu)美,操作簡(jiǎn)單,方便用戶操作。此外,用戶不需要注冊(cè)登錄就可以對(duì)系統(tǒng)首頁(yè)進(jìn)行信息瀏覽,但在用戶登錄之后,還可以進(jìn)行后臺(tái)的操作功能。系統(tǒng)仍然需要進(jìn)一步的完善,可以增加一些項(xiàng)目的功能,從而提升用戶的體驗(yàn)。例如,在用戶登錄時(shí)添加七天免登錄的功能,方便下一次登錄時(shí)的操作。增加聊天的功能,從而使多個(gè)用戶之間可以進(jìn)行私信交流、溝通配件價(jià)格等功能。
參考文獻(xiàn):
[1] 王烽杰,郭玉靖.JAVA編程語(yǔ)言在計(jì)算機(jī)軟件開(kāi)發(fā)中運(yùn)用[J].大眾標(biāo)準(zhǔn)化,2020(18):66-67.
[2] 王振巖.基于計(jì)算機(jī)軟件開(kāi)發(fā)下JAVA編程語(yǔ)言的研究[J].中國(guó)高新區(qū),2018(4):181.
[3] 高陽(yáng).JAVA編程語(yǔ)言在計(jì)算機(jī)軟件開(kāi)發(fā)中的應(yīng)用[J].電腦迷,2018(5):47.
[4] 王鴻彬.基于微信小程序的智慧校園網(wǎng)絡(luò)資源分享平臺(tái)的設(shè)計(jì)與開(kāi)發(fā)[J].數(shù)碼設(shè)計(jì)(下),2019(11):270.
[5] 張振超,吳杰,陳序蓬.淺談Java中Mysql數(shù)據(jù)庫(kù)的連接與操作[J].信息記錄材料,2020,21(2):144-145.
[6] 涂華燕.基于MySQL宿舍管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)[J].電腦編程技巧與維護(hù),2021(12):104-106.
[7] 歐陽(yáng)宏基,葛萌,趙薔.基于JDBC與設(shè)計(jì)模式的數(shù)據(jù)庫(kù)連接池實(shí)現(xiàn)方法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011,21(1):84-87.
[8] 王宇,夏麗麗,何穎剛.基于SSM框架的高校畢業(yè)論文管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2021(22):26-29.
[9] 楊子鑫,余小蘭.基于SSM的農(nóng)產(chǎn)品銷售系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代信息科技,2021,5(15):33-35,39.
[10] 余任杰,王風(fēng)碩.基于Node.js的網(wǎng)上圖書(shū)銷售系統(tǒng)設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2021,17(34):83-84,92.
【通聯(lián)編輯:謝媛媛】