遼寧科技學院 薛晶晶 王彥明
SpringBoot的出現讓Spring變得更易于開發和維護,Spring Boot提供了一種新的編程范式,能在最小的阻力下開發Spring應用程序。有了它,你可以更加敏捷地開發Spring應用程序,專注于應用程序的功能,不用在Spring的配置上多花功夫,甚至完全不用配置。本項目以SpringBoot框架為核心設計開發一套微信點餐系統。
我們是準備通過一個移動的端口與PC端口相結合,并且配合了一下餓了么和美團的方式,不過我們的不只是送餐服務,因為我們這里的重點是通過與學校食堂來與同學建立連接,猶如我們到銀行去取票排隊一樣,我們的就餐前在網上就已經取票排隊了,并且同學們點好自己需要的餐食下課后去取就可以,食堂也先一步準備好了。
本項目運用最前沿的Spring Boot技術和生活中應用最廣泛微信平臺的打造一款智能點餐系統,SpringBoot作為一個微框架有諸多好處,它繼承了原有Spring框架的優秀基因,不用自己做配置,改進了Spring配置繁瑣麻煩的缺點基于上述優點SpringBoot特別適合本項目的研發。
(1)統一混亂的點餐方式和支付方式,隨時隨地下單點餐,不用在下課后擁擠在檔口前集中刷卡付費,輕松,自由。在線支付,省去了攜帶飯卡給飯卡的累贅,食堂工作人員也不用一邊配餐一邊挨個確認,避免的出錯,提高了效率避免食堂檔口的擁擠摩擦
(2)訂單直接下達后廚,食堂按訂單備餐高效,準確,減輕工作壓力,提高服務質量。降低中間流程的出錯率,更節省溝通成本。增加了評價和推送功能,使得菜品信息更好更快的在學生之間流通,不但督促商家提高服務質量,也為學生提高就餐體驗,推送功能也為商家提供最方便最高效的宣傳方式,學生也能第一時間獲取新品信息。
(3)由于有預約訂餐功能,食堂和檔口可以根據訂單情況提前安排備餐,靈活高效,當訂單過多的時候提前加大供應,避免利潤損失,當訂單減少時,減少工藝,避免浪費。不用再集中短時間配餐也降低了食堂工作人員的工作強度和出錯概率。
買家端是一個非常重要的端口,需要設計的新穎和有特點,并且功能需要相對的齊全以及后期可以添加許多經過市場的論證的功能以及減少冗余的部分舍得APP更加的簡單化和智能化,并且可以通過大數據的計算來相應的推薦大家適合的以及喜歡的食物。
本項目著力研究后端設計方案,主要是數據庫的設計和緩存設計,主要應用使用Spring boot 技術,Spring boot可以輕松的創建獨立運行的程序,非常容易構建獨立的服務組件,是實現分布式架構、微服務架構利器。Spring boot簡化了第三方包的引用,通過提供的starter,簡化了依賴包的配置。Boot及其CLI可以通過GVM的命令行gvm install springboot進行安裝。要進行打包和分發的工程會依賴于像Maven或Gradle這樣的構建系統。為了簡化依賴圖,Boot的功能是模塊化的,通過導入Boot所謂的“starter”模塊,可以將許多的依賴添加到工程之中。為了更容易地管理依賴版本和使用默認配置,框架提供了一個parent POM,工程可以繼承它。數據庫主要采用 SpringBoot+MyBatis,緩存方面主要是使用SpringBoot+Redis, Redis支持主從同步,Redis有著更為復雜的數據結構并且提供對他們的原子性操作,這是一個不同于其他數據庫的進化路徑。Redis的數據類型都是基于基本數據結構的同時對程序員透明,無需進行額外的抽象。Redis運行在內存中但是可以持久化到磁盤,所以在對不同數據集進行高速讀寫時需要權衡內存,因為數據量不能大于硬件內存。在內存數據庫方面的另一個優點是,相比在磁盤上相同的復雜的數據結構,在內存中操作起來非常簡單,這樣Redis可以做很多內部復雜性很強的事情。數據可以從主服務器向任意數量的從服務器上同步,從服務器可以是關聯其他從服務器的主服務器, redis負責 session 數據的存儲,消息推送方面項目使用了WebSocket,WebSocket協議支持遠程主機之間進行全雙工通信, 該技術的目標是為基于瀏覽器的、需要和服務器進行雙向通信的應用程序提供一種通信機制。研究方案如圖1所示:

圖1
前端和和后端的技術應用,本項目的擬流行Spring Boot技術開發后端,Spring Boot是一種全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置,從最根本上來講,Spring Boot就是一些庫的集合,它能夠被任意項目的構建系統所使用。本文后端主要使用Spring Boot技術,前端主要使用Vue,前后端依靠RESTful鏈接起來(見圖2)。

圖2
功能的劃分和設計:本部分包括買家端和賣家端的商品模塊,訂單模塊和類目設計。針對需求本項目功能分析和劃分(見圖3):

圖3
目前我們的軟件還有著許多需要改進的地方,我們也會和它一起變得更好,現在其運行后提高了大家點餐的效率,統一了支付,反響也比較好,其中有著許多好的建議我們也會積極的采納,希望可以和大家一起變得越來越好。