場館預約小程序的設計與實現


摘 要

時代在進步,人們對日常生活質量的要求不再受限于衣食住行。現代人不僅想要一個健康的身體,還想擁有一身宛如黃金比例的身材。但是人們平常除了上下班和上下學的時間,其余空余時間寥寥無幾,所以我們需要用體育場館預約來節省本來就不多的時間,進行科學有效地的運動。

因為以上需求設計了場館預約小程序,它可以幫助人們進行手機端的體育場館預約,通過場館方提供運動分類與時間表,該程序能夠解決節省用戶預訂場館時間,簡化預訂場館操作以及透明化場館的信息,具有符合現在移動互聯網盛行趨勢的優勢。而通過預約小程序后臺管理系統可以用管理員身份對小程序的場館以及用戶做統一的管理,方便管理人員查看程序數據以及使用情況。

場館預約小程序以及場館預約后臺管理系統都使用了SpringBoot作為后端支持,而小程序前端頁是用微信原生進行開發,場館預約后臺管理系統則是使用了Vue以及ElementUI作為前端技術進行開發,兩者都是前后端分離開發的,而兩者一起使用能幫助用戶效率地進行體育場館預約,管理員能對用戶和場館方進行管理。

關鍵詞:場館預約 運動分類 移動互聯網 前后端分離

Abstract

With the progress of The Times, people's requirements for the quality of daily life are no longer limited to food, clothing, housing and transportation. Modern people not only want a healthy body, but also want to have a body like the golden ratio. However, people usually have little free time except for commuting and going to and from school. Therefore, we need to make sports venue reservation to save the limited time and carry out scientific and effective exercise.

Because of the above requirements designed venue booking small program, it can help people to phone the sports venue booking, through the classification of sports venues provided with schedule, this program can save users solve booking venues time, simplify operation and booking venues transparent venue information, have the advantage of conform to the mobile Internet now popular trend. And through the appointment of small procedures background management system can use the administrator identity of the small procedures venue and users to do unified management, convenient for the management staff to view the program data and use.

Venue booking small program and venue booking background management system using SpringBoot as backend support, and small application front page is using WeChat native development, venue booking background management system is using the Vue and ElementUI as front-end technology for development, both before and after the end of the development of separation, and can help users to efficiently they are used together to sports venues, the administrator can manage the users and venues.

Key words: Venue Booking The Classification of Sports The Mobile Internet The End of The Development of Separation

目 錄

第一章 緒論8

1.1 研究背景8

1.2 研究意義9

1.3 研究現狀10

1.3.1 國外研究現狀10

1.3.2 國內研究現狀10

1.3.3 國內外研究現狀總結11

1.4 章節安排11

第二章 系統需求分析13

2.1 體育場館市場需求分析13

2.2 小程序市場需求分析13

2.3 系統可行性分析14

2.4 本章小結15

第三章 系統設計16

3.1 系統功能設計16

3.2 數據設計17

3.3 本章小結20

第四章 系統實現22

4.1 技術選型22

4.1.1 SpringBoot框架簡介22

4.1.2 Vue.js框架簡介22

4.1.3 MyBatis框架簡介22

4.1.4 Redis緩存技術22

4.1.5 MySQL數據庫22

4.2 數據庫實現23

4.2.1 數據庫表說明23

4.2.2 數據庫表的詳細實現23

4.3 主要功能模塊實現26

4.3.1 用戶登錄/登出功能實現26

4.3.2 用戶搜索場館功能實現26

4.3.3 用戶瀏覽場館信息功能實現27

4.3.4 用戶預訂場館功能實現28

4.3.5 用戶管理余額功能實現29

4.3.6 管理員登錄功能實現30

4.3.7 管理員管理功能實現30

4.4 本章小結32

第五章 系統測試33

5.1 測試環境描述33

5.2 測試用例執行情況33

5.3 測試設計評估及改進34

5.4 本章小結35

第六章 總結36

第一章 緒論

1.1 研究背景

隨著社會的快速發展以及科技高新技術的全面落實,關于計算機以及網絡的相關技術得到了快速發展,互聯網也成為了人們生活中不可缺少的一部分。繼而在互聯網的便利度之上產生了移動互聯網,而智能手機作為移動互聯網的常用載體,它也作為當今社會人們首屈一指的日常用品[1]。而另一方面,人們平時生活節奏很快,除了上班沒有什么空余時間。時代雖然發展迅速,但是我們不能忘記運動對一個人的重要性。隨著人們對健康的要求越來越高,在平時生活中對體育及場所的需要也越來越多。自從北京成功舉辦奧運會后,國家也是大大扶持全民運動的政策,除了許多運動場館也在城市內坐地而起,更是頒布了《全民健身條例》[2]。作為東道主的中國因為取得了歷史上最優異的成績,使得全民健身不再是口號而是行動。在這個背景下,在未來幾十年,人們對體育場館的需求也是日益增加,所以國家也在客觀上要求提高各類各類體育場館的利用率,要怎么提高體育場館利用率是一個很現實的問題,因為我們要知道運動場館的空間也是極其有限的,在周末,進入場館鍛煉的人也是平時的倍數,就會導致人等場地的情況,但在工作日的上班時間又會出現體育館內的場地大量無人使用的情況,所以為了提高體育場館的有效利用率,避免等場或空場的現象[3],也就是設計一套體育場館網上預約系統是非常有必要的。

而主要有兩個原因催生體育場館預約的服務:

(1)居民體育需求量與體育場館提供量沖突。隨著社會經濟的蓬勃發展,城市居民的生活質量不斷提高。人們對生活水平的要求不再局限于衣食住行,社會群體越來越關注自身的健康問題和精神方面的追求。而體育運動這個項目兩者兼備,也自然受到了大眾的追捧。隨著奧運會、亞運會在中國的成功舉辦,更是激發了社會群眾進行身體鍛煉的激情。隨著社會越來越多的體育參與,使得城市居民對體育場館服務內容要求越來越高。而體育場館作為城市空間的一部分,是城市居民進行體育活動的主要物質載體和基礎[4]。在這個背景下,在未來幾十年,人們對體育場館的需求也是日益增加,所以國家也在客觀上要求提高各類各類體育場館的利用率,要怎么提高體育場館利用率是一個很現實的問題,因為我們要知道運動場館的空間也是極其有限的,在周末,進入場館鍛煉的人也是平時的倍數,就會導致人等場地的情況,但在工作日的上班時間又會出現體育館內的場地大量無人使用的情況,所以為了提高體育場館的有效利用率,避免等場或空場的現象,必須要滿足居民預約體育場館的需求[5]。

(2)政府連續出臺體育有關政策。2016年6月國務院頒布《全民健身計劃(2016—2020年)》,國務院77號文件《關于加快發展健身休閑產業的指導意見》[6]中更是明確指出隨著國家經濟的快速增長,我國已經穩步進入了小康社會,而人們生活壓力的增大,也讓人們對體育的需求量日益增加,而隨之而來的,對體育場館的需求量也增加,也就是對體育場館預約系統產生了要求。而教育部、國家體育總局聯合印發《關于推進學校體育場館向社會開發的實施意見》[7]的文件中提出了要加大改革學校體育的制度,積極地將學校內的體育場館面向全學生和全社會進行開放,才能抑制廣大社會群體的體育場館需求與場館資源供給量不平衡的矛盾,促進社會健身行業的蓬勃發展。以上舉措也證明了中央政府在經濟發展的過程中對體育行業城市建設中的作用非常重視,也證明場館預約系統出生的重要性。

目前,在其他地點的預約系統類似醫院掛號系統,酒店訂房系統,電影訂票系統,餐廳訂座系統也已經在人們生活中廣泛應用了。而通過國家政策的支持,以及人們越來越重視身體鍛煉,體育場館預約能夠為人們帶來許多便利,所以需要一個移動平臺可以進行網上預訂體育場館。本課題開發一個場館預約小程序,實現在手機端就可以完成場館預訂,以實現節省用戶時間和簡化繁瑣的操作以及場館信息的透明化。

1.2 研究意義

體育場館是為了滿足運動訓練、運動競賽及大眾體育消費需要而專門修建的各類運動場所的總稱[8]。傳統的體育場館預約方式一般是需要客戶本人親自到體育場館跟場館前臺的工作人員進行直接溝通洽談的方式進行體育場館預約,而網上預約體育場館方式無需瑣碎的操作,大大節省了客戶和場館方的操作時間。以網上預約場館系統作為第三方載體,即為客戶和場館方中間的橋梁,為二者提供服務。客戶可以清晰的訪問到具體的場館信息,并且一鍵就可以完成預定場館。而場館方也可以在后臺進行查詢以及管理預訂信息。

體育場館預約對用戶的優勢有:

(1)對大小型體育場館進行統一的整理。體育場館網上預訂系統可以實現對于用戶所在地附近的所有大小型的體育運動場館通過預約系統進行統一的整理,用戶通過體育場館網上預訂系統就可以找到自己所需要的體育場館或者是體育運動,解決了以前體育場館就在自己的身邊卻因地理位置或聯系電話未知,導致無法進行預訂的弊處,讓社會更加能響應全面健身的號召。

(2)實現用戶方和場館方的互利共贏。申請過的學校場館或者是小區內閑置的運動場地可以通過體育場館網上預訂系統面向整個社會進行出租使用,用戶可提前預訂該場地,成功避免學校場館或者小區內的運動場地被閑置,也能增加利用率比較少的運動場地的維護資金,實現真正用用戶的資金來運轉運動場地。

(3)響應體育政策的號召。現在正是互聯網的黃金時代,人們相比于以前的門店消費更傾向于在互聯網進行線上消費。當人們發現通過體育場館網上預訂系統就可以根據自身的時間表來安排運動的體育場館后,按照系統所顯示的預訂信息在時間段內到達指定的場館就可進行運動。而以上既響應了政府《全面健身》的號召,又在最簡便的操作中和最簡短的時間內完成了運動[9]。

1.3 研究現狀

1.3.1 國外研究現狀

(1)國外體育場館經營管理研究。國外體育場館前期的建設以及投資都是由中央或者當地政府承擔的,因為這是作為政府的一份責任,也是作為對國家納稅人的權利保護。國外體育場館具有規模大,需要投資金多,回收時間長的特點,而以上的特點也注定國外體育場館的投資很難吸引到國外資本家或者社會的資金。所以國外的體育場館建設流程一般如下:由政府體育的相關部門或者國家奧委會進行建筑方面規劃后,提出發展思想和總體的建設標準,經議會和中央政府討論通過后,下批到各地政府進行建設,中央政府一般負責的是重要體育場館建設,而各地的體育場館建設,資金鏈以當地政府投資為主,中央政府視情況資助[10]。

(2)國外體育場館政策研究。世界上各地都為了推進當地體育事業發展立法了需要對體育比較全面的規定,而且體育場館是尤為重要的一個方面。例如韓國為了提高全面體育的參與度,極大地擴充了體育場館的數量。而秘魯《體育法》更是指出:“在全國實施的所有居住地區和城市土地規劃中,都必須留出用于建設公園的百分之五十的地方作為體育設施建筑用地......在所有中小學、大學、軍隊、城市、居民區、娛樂園和其它類似設施建設中,都要考慮建筑體育設施[11]。”

1.3.2 國內研究現狀

(1)國內體育場館經營管理研究。國內的體育場館的前期投資主要是中央政府和地方政府承擔的,而這兩者中,地方政府的投資為主。因為我國所有制的特殊情況,并不能使體育場館的投資結構多元化,只能依靠政府通過多方面進行資金的募集。因為當前階段國家的社會中堅力量還不足以投入大量資金到體育場館建設當中,所以我國的體育場館建設極其有限。

(2)國內體育場館政策研究。自建國以來,各級政府對體育場館的投入就十分的看重,社會各階層人士也給予體育場館投入非常大的支持。伴隨著體育基礎建設投資的緩步增加,政府出臺了許多相關的規定和文件對體育場館方面的投資進行了管理,其中分為三大方面:體育場館的建設規定、管理規定、使用規定。

(3)國內體育場館網上預約現狀研究。通過網上預約平臺、微信端的預約小程序、還有類似美團的預約手機應用程序的數據我們可以發現不同的個人特征對網上預約系統的影響是不一樣的[12]。而其中又分別分為性別、城市發達程度、年齡三個方面,根據數據顯示,女性較與男性,而偏愛使用網上預約系統,因為女性在網上消費排行是占榜首的,所以以上的結果也是順其自然。而又因為女性在家庭的地位,在忙碌的家庭工作占大多數時間的情況下,在互聯網上進行預約能起到節省時間的目的。經但單因素方差分析發現,除了性別城市發達程度對網上預約平臺有很大的影響,其原因也有跡可循,發達城市網絡也自然發達,市民在空余時間經常使用網絡進行消遣,所以網絡作為一個預約手段也無可厚非,其次發達城市的居民對自身的身體要求比較高,所以也經常參加體育活動。而除了以上兩項因素,還有年齡也是影響網上預約平臺的關鍵,根據調查發現,老年人使用網上體育場館預約較少,這可能的原因也是老年人對互聯網接觸較少[13]。

1.3.3 國內外研究現狀總結

通過國內外體育場館研究現狀的對比后,我們可以發現我國在這方面的政策還是存在一定的問題。首先我們要明白只有有經濟,我們的體育事業才能發展起來。這兩者也是成正比關系的,而我國在這方面的投資相比于世界上的體育強國還是微乎其微。其次我們在建設體育場館的時候,要學會靈活運用現有資源,最大程度的利用體育場館資源。要懂得對體育場館進行維護和保養[14],而又因為我們先階段體育場館資源極其短缺,一到節假日,城市內的運動場地極易出現需要運動的人數是場地的倍數的情況,所以應該多多建設簡易的室內運動場館,而不是盲目的去求大求高,才是最大程度的飲水止渴。最后,我國雖然出臺了不少關于體育場館的政策,但是實際上的執行量還是不高,真正情況上,我國許多體育場館都會出現因其它原因被大量侵占,大量閑置的情況,因此我覺得我們應該在行動上加大力度,采取一定的監督和懲罰機制,最大程度的保障體育場館的使用率。

1.4 章節安排

本文一共分為六個章節,每個章節的主要內容如下:

第1章首先介紹了本課題的研究背景和意義,體育場館的基本概念、體育場館預約的產生原因和好處,并分析了國內外體育場館的現狀及國內體育場館未來的發展前景,最后給出了本文的結構。

第2章首先進行了系統的需求分析,其中需求分析從體育場館的市場需求分析、小程序的市場需求分析、兩方面進行分別分析。然后從技術可行性、運行可行性、經濟可行性、法律可行性多方面驗證了本系統的可行性。

第3章主要闡述了本系統的設計過程,其中包括本系統的各個功能設計,然后先從實際情況模擬出需要的數據體和數據結構,然后再根據前者轉化成數據管理系統的數據邏輯結構,設計出數據庫E-R圖。

第4章分別介紹了技術選型以及技術框架,其中開發技術中包括了JAVA編程語言、Redis緩存技術、Mysql數據庫,而開發框架分別介紹了SpringBoot框架、Vue.js框架以及MyBatis框架。并分別對以上框架和技術進行了介紹和特點的描述。然后統的功能的實現要點、實現效果與實現步驟,也有相應的圖片展示。最后再詳細介紹本系統的數據庫實現,也就是每張關鍵數據表以及表的內字段以及備注。

第5章在了解了系統測試的目的之后,根據所描述的測試環境對體育場館預約系統進行了整體的測試,最后對測試結果進行評估,指出系統本身還存在的問題并進行改進。

第6章則是本次畢業設計的總結。

第二章 系統需求分析

2.1 體育場館市場需求分析

隨著國家的經濟文化水平的不斷提高,互聯網水平的提高也讓人們的生活處處感受到了便利,許多事情足不出戶就可以輕松完成。而這也導致了體弱多病人群的產生,隨著更多人認識到運動的重要性,人們對體育場館的需求也是日益增加,所以國家也在客觀上要求提高各類各類體育場館的利用率,要怎么提高體育場館利用率是一個很現實的問題。

現階段的體育場館服務存在多方便的問題,例如數量好,質量差等等。而這些也完全滿足不了我們想普及市民全民運動的需求。據調查,在上海市的體育場館服務基本以場地設施、科學指導、體育活動以及體育信息服務為主。而這些服務也暴露出非常多的社會需求問題。首先場地分布的非常不均勻,場地基本都集中在市中心周圍,讓家距離市中心遠的市民難以有時間有進行運動。并且市中心場地的數量也難以支撐運動的人員,所以總體體育場館資源非常稀少。其次場館收費不夠透明化,大多數場館使用隨到制,大多數市民根本無法了解被收費的項目,而在意見信息反饋方面,更是效率低下,這些反饋的信息缺乏人員管理,往往市民反饋的信息無法送到場館管理者的手里。根據問卷調查解析可知,71%的被調查者對如今的體育場館服務不滿意,也就是說只有不到30%的被調查者對如今體育場館服務感到滿意。而不滿意人群中,最不滿意的服務是體育場館的渠道方式,緊跟著的是收費價格和服務人員的態度,分別為總數的74.2%和74%,而同時也有大約70%的人群對體育場館的服務數量感到不滿意[15]。

而因為以上暴露出來的問題,我們應該要明白提升體育場館預約服務的重要性,這樣才能為市民提供多樣化、多層化的體育服務。

2.2 小程序市場需求分析

根據騰訊公司2016年第三季度的財務報告,微信的月活躍賬戶數已經高達8.46,相比往期同一季度增長了30%,廣告收入更是增長了83%,達到了43.68億元人民幣[16]。而隨著近幾年手機網民數量遠超電腦端,手機端的巨大流量也帶來了無限商機[17]。而在手機端中,被安裝最多和使用最頻繁的軟件非微信莫屬[18]。微信小程序是近幾年來在微信平臺上開發的一種新技術,而這種技術也有頗多好處,首先它是基于微信平臺進行開發的,也就說明了它擁有微信用戶這個龐大的用戶使用群體,還有它無需再進行重復的下載與安裝,只需在微信端登錄即可使用[19]。而微信小程序作為近幾年新生微媒體,比QQ空間、微博更受眾[20]。而微信端的場館預約小程序相比以往的網上場館預約系統,它給用戶更提高了便捷度,人們在隨身攜帶的手機上就可以完成體育場館的預約,用戶在使用時不僅可以隨時進入小程序進行使用,還可以切換到微信聊天模式、微信朋友圈,以及在支付時也可以調用微信支付接口直接進行支付。而微信小程序對于場館方也一樣快捷,而且便于管理[21]。

對于開發者而言,微信小程序給予了所有開發者一次廣闊的開發平臺,相較于手機應用程序,開發者能夠在更短的時間內開發出成本更低的微信小程序。而因為小程序很難不與去跟手機應用程序做對比,所以在開發小程序的過程中,需要極大程度的考驗開發者的技術跟素質。如何將更簡潔的微信小程序開發成符合用戶高質量要求的程序是開發者需要深思的問題。而微信小程序符合如今移動互聯網發展的“微、小、輕”趨勢,也注定小程序擁有更為廣泛的市場前景。

2.3 系統可行性分析

系統可行性分析確定了場館預約系統是在現實生活是可行的,而可行性分析的目的就是希望能用最高的效率去解決問題,如果可以做到,說明該項目是可行的而想要達到以上的目的,就要從幾種方面去分析能解決的問題,進而才能判斷最后這該項目是否可行[22]。而可行性分析奔上就是將壓縮漫長的時間,最后得出結論如何簡化系統和設計的過程。而本論文從以下幾個方面進行可行性研究:

  1. 技術可行性 體育場館會有輪空和排隊兩種截然相反的情況,不能保證體育場館的利用率,預約者不能保證不浪費時間和精力去運動,需要合理的安排消費的運動時間,影響預約者的運動熱情。從場館管理者角度考慮可能會帶來實際和潛在的經濟損失。若成功開發本系統,將有助于管理者更好地管理場地。更好地吸引運動者及時調整場地的預約時間,在激烈的市場競爭中把握主動。因此,從長遠利益考慮,本項目若能開發成功,它所帶來的效益遠高于系統投入。而本文采用前后端完全分離的開發方式,前端采用uin-app的開發框架進行微信小程序的開發,而后端采用的是springboot+mybatis的開發框架,目前已掌握了解springboot和mybatis的框架使用方法,sql語句的編寫方式以及java編程語言的使用,并且可以將vue.js開發的微信小程序前端交互頁面與數據庫中的數據信息進行交互操作[23],因此本系統在技術上是可行的。

  2. 運行可行性 在場館預約的業務方面,由于休息日場館來往人流多,等待時間長,等待率高, 在系統投入運行后,可以實現業務中的合理安排客戶運動時間和場館最大承受人數,保證了場館的服務質量。

  3. 經濟可行性 本系統獨立設計與開發實現,熟悉體育場館預定流程,能深入系統業務內部進行需求分析與調研等工作,同時在小程序開發時只需要配置筆記本和測試的手機,在該筆記本上安裝相關的應用軟件即可搭建開發環境,不存在大量的經濟支出。因此本系統在經濟上是可行的。

  4. 法律可行性

本系統獨立設計與開發完成,未涉及到其他知識產權問題,在軟件開發完成后的使用中也不會涉及到其他的法律問題,因此本小程序在法律上是可行的。

2.4 本章小結

本章首先進行了系統的需求分析,其中需求分析從體育場館的市場需求分析、小程序的市場需求分析兩方面進行分別分析。然后從技術可行性、運行可行性、經濟可行性、法律可行性多方面驗證了本系統的可行性。

第三章 系統設計

3.1 系統功能設計

因為本系統是微信小程序,所以用戶登錄本系統時會根據微信授權情況直接用微信用戶的身份進行登錄。若用戶沒授權的話,只能進行場館搜索和場館信息查詢。若用戶成功授權,會成功獲取到該用戶的余額信息,訂單信息,也可進行場館進行預訂,場館分類,搜索場館。用戶可以在小程序首頁查詢到附近的所有場館,既可以在搜索場館輸入指定的場館名進行指定預訂,也可以點擊場館運動分類標示圖進行運動分類篩選場館,也可以點擊左上角的城市定位選擇指定城市的場館進行預訂。每個場館都有該場館詳細信息,例如場館名稱,具體位置,營業時間,聯系電話等。訂單功能包括提交訂單和刪除訂單,用戶在完成預訂之后,可以在訂單頁面查看本用戶的所有訂單,而余額功能包括余額充值和余額明細。用戶進行場館消費之后,可以在系統查看每次消費的消費記錄,若在支付頁面提示余額不足時,也可以跳轉到余額充值頁面進行充值。而本系統具體的功能設計如下:

(1)登錄/注冊功能:用戶通過微信登錄微信小程序來創建自己的小程序用戶,微信能夠自動獲取用戶的微信的個人信息。

(2)用戶瀏覽功能:用戶登錄小程序后,小程序會根據用戶的當前定位來按照距離來顯示附近的所有體育館。體育館的信息包括名稱,運動,地址,距離,以及是否支持到場支付和小時消費。

(3)用戶搜索功能:用戶在搜索框輸入場館名稱或者運動名稱即可查詢到有關的場館信息。

(4)用戶預訂功能:場地預訂是該小程序的主要功能,用戶通過點擊到具體的場館,選擇具體的日期和時間支付后即可成功預定。

(5)費用結算功能:用戶在選定日期和時間后即可使用自己的賬上余額支付,支付成功后會跳轉到訂單頁面顯示剛剛成功的預訂信息。

(6)場館信息功能:場館信息有該場館的場館名稱,具體位置,營業時間,聯系電話,用戶可以點擊具體位置旁邊的定位按鈕即可查看該體育館在地圖內的定位,而點擊聯系電話旁邊的電話按鈕則會呼叫該商家的聯系電話。除了可選的空余日期和空余時間,還有場館內所支持的設施,例如是否有停車位,洗浴設施等等,交通方式提供地鐵或公交的乘坐方式,還有場館內的詳細介紹。

(7)用戶訂單功能:訂單模塊會有該用戶所有的訂單,分為四類訂單,已支付訂單,待支付訂單,已完成訂單,已取消訂單,而訂單完成后用戶可以對該場館進行相應的評價。

(8)用戶個人信息功能:用戶可以在該模塊進行微信登陸登出,個人余額充值以及余額明細查詢,用戶意見反饋。

(9)管理用戶功能:管理員在后臺管理系統可以對微信用戶、后臺管理系統用戶進行管理,功能包括用戶的查詢、個人信息修改、新增用戶和刪除用戶。

(10)管理場館功能:管理員可根據場館名、所在城市、所在地區進行多條件查詢、對場館信息可以進行修改,也可以進行新增場館和刪除場館的操作,還可以對場館內的運動分類進行定價。

(11)公告功能:此系統使用與后臺管理系統內管理員對系統內的其他操作人員進行版本更新或者其他事宜的公告,普通管理員只可進行查看不可對內容進行更改[24]。具體功能結構圖(見圖3-1)

添加圖片注釋,不超過 140 字(可選)

圖3-1 功能結構圖

3.2 數據設計

將場館預約系統的數據項和數據結構的設計轉化成Navicat Premium 12的實際數據庫模型,也就是本系統的數據庫邏輯結構。在各個數據實體連接關系的基礎上,構成數據庫中每張表的連接關系,場館預約系統內的各個表的設計見圖3-2。

添加圖片注釋,不超過 140 字(可選)

圖3-2 實體關系圖

用戶在使用場館預約系統進行預約時,要產生四個數據實體,而根據第一節的設計可得知,四個數據實體分別是:

(1)用戶數據實體:用戶標識符、會話、創建時間、最近登錄時間、所在城市、省、國家、頭像、性別、昵稱。

添加圖片注釋,不超過 140 字(可選)

圖3-3 用戶實體圖

(2)場館數據實體:場館號、場館名、場館地址、場館營業時間、場館電話、場館交通方式、場館介紹、場館小時消費、場館支付方式、場館所在地區、場館所在城市。

添加圖片注釋,不超過 140 字(可選)

圖3-4 場館實體圖

(3)場館設施實體:場館設施號、場館設施名、場館設施描述。

添加圖片注釋,不超過 140 字(可選)

圖3-5 場館設施實體圖

(4)場館運動實體:運動號、運動名、運動描述。

添加圖片注釋,不超過 140 字(可選)

圖3-6 場館設施實體圖

而因為在使用本系統進行預訂的過程中,除了以上四個數據實體,還會牽扯到用戶本身的訂單數據,余額情況還有用戶預訂場館的預訂情況記錄,所以應該還包括以下幾個數據實體。

(5)訂單數據實體:訂單號、場館號、下單用戶號、訂單總金額、下單時間。

添加圖片注釋,不超過 140 字(可選)

圖3-7 訂單實體圖

(6)預訂數據實體:場館號、運動號、場館預訂日、場館預訂時段、場館預訂費用、場館預訂場地號、預訂人號。

添加圖片注釋,不超過 140 字(可選)

圖3-8 預訂數據實體圖

(7)用戶消費實體:用戶標識符、用戶消費金額、用戶消費方式、用戶消費時間。

添加圖片注釋,不超過 140 字(可選)

圖3-9 用戶消費實體圖

3.3 本章小結

本章主要闡述了本系統的設計過程,其中包括本系統的各個功能設計,然后先從實際情況模擬出需要的數據體和數據結構,然后再根據前者轉化成數據管理系統的數據邏輯結構,設計出數據庫E-R圖。

第四章 系統實現

4.1 技術選型

4.1.1 SpringBoot框架簡介

近些年,Java編程語言被稱為計算機軟件開發使用的主要語言[25]。而Springboot是一個非常流行并且基于Java的開發框架,SpringBoot是由Pivotal團隊在2013年設計的一個全新的輕量級框架,而SpringBoot也是基于Spring 4.0進行設計的[26]。而Spring是一個開源框架,它也是J2EE的輕量級代替品。而SpringBoot的設計初衷就是因為Spring框架繁瑣的配置文件,而使用SpringBoot框架能最大限度的減少開發項目時的配置文件,也能讓你的項目以最快的速度跑起來。也就是說SpringBoot不是在功能上對Spring有了增強,而是讓使用者能夠快速運用Spring框架。

4.1.2 Vue.js框架簡介

Vue.js首先不是一個入侵式前端框架庫,而是一套構建用戶界面的漸進式框架,相較于其他的重量級框架,Vue的核心功能只關心View層,而且它很容易被開發者所學習,也非常容易與其他的庫或者已有項目進行整合。而且它還具備響應式編程、組件化、模塊化的優點,也具備容易上手的API。而Vue最偉大強大的一點是它具備驅動采用單文件組件和Vue生態系統支持的庫開發復雜單頁應用,組成數據驅動與組件化的前端開發。

4.1.3 MyBatis框架簡介

MyBatis是集成了SQL語句查詢、存儲過程和高級映射的持久層框架[27],而MyBatis也幾乎封裝了所有手工設置的JDBC代碼,讓開發者選擇是配置式開始還是注解時開發來調用JAVA內的實體類從而映射出數據庫中的記錄。

4.1.4 Redis緩存技術

Redis是一個開源的、基于內存或持久化、可網絡交互、鍵值對的存儲數據庫[28],也是當今最為流行的鍵值對數據庫之一。Redis是由VMware公司進行主要開發的,Redis支持五種數據類型,其中包括:字符串,鏈表、集合、有序集合、哈希表;而Redis還支持事務的原子性,也就是要么全部執行,要么全部不執行。Redis為保證運行時的系統性能,還支持不同的排序方式,而且所有信息都被保存在緩存當中。

4.1.5 MySQL數據庫

MySQL是一個由瑞典MySQLAB公司開發的小型關系型數據庫,MySQL具有速度快,體積小,成本低,以及開源的特點[29]。而MySQL的設計原理是將一個很大的數據分開一塊塊保存在不同的表中,然后再將這些表放入不同的數據庫中,而不是將一個很大的數據全部放在一個大數據庫里,而這樣的設計不僅提升了Mysql數據庫的讀取速度,而且它的靈活性和可管理性都有了質的飛躍。程序員一般訪問及管理Mysql數據庫的常用SQL語言,即為結構化查詢語言。結構化語言也使得程序員對數據庫進行操作時變得更加簡便。

4.2 數據庫實現

本場館預約系統中需要建立10張表,本節將詳細介紹本系統數據庫內關鍵的表結構設計以及每個表的字段說明。

4.2.1 數據庫表說明

(1)微信用戶表(user):用于存儲用戶的詳細信息,如表4-1。

(2)場館表(stadium):用于存儲場館的詳細信息,如表4-2。

(3)場館預訂情況表(stadium_reservation_information):用于存儲場館的預訂信息,如表4-3。

(4)訂單表(order):用于存儲訂單的詳細信息,如表4-4。

(5)場館設施表(stadium_facilities):用于存儲場館的設施信息,如表4-5。

(6)運動分類表(sport):用于存儲運動分類的詳細信息,如表4-6。

(7)場館運動價格表(sport_price_ground):用于存儲場館與運動分類映射的價格表,如表4-7。

(8)用戶消費表(user_deposit):用于存儲用戶的消費信息,如表4-8。

4.2.2 數據庫表的詳細實現

(1)微信用戶表(user)的設計如表4-1所示。

表4-1 微信用戶表

編號

字段名稱

字段類型

字段說明

備注

1

open_id

varchar

用戶編號

主鍵

2

skey

varchar

用戶會話

3

create_time

timestamp

用戶創建時間

4

last_visit_time

timestamp

用戶最近登錄時間

5

session_key

varchar

/

6

city

varchar

用戶所在城市

7

province

varchar

用戶所在省

8

country

varchar

用戶所在國家

9

avatar_url

varchar

用戶頭像地址

10

gender

tinyint

用戶性別

11

nick_name

varchar

用戶昵稱

(2)場館表(stadium)的設計如表4-2所示。

表4-2 場館表

編號

字段名稱

字段類型

字段說明

備注

1

sid

int

場館號

主鍵

2

sname

varchar

場館名稱

3

saddress

varchar

場館地址

4

sbusinesshour

varchar

場館營業時間

5

sphonenumber

varchar

場館電話

6

stransport

varchar

場館交通方式

7

shourlyconsumption

double

場館小時消費

8

spaystyle

varchar

場館支持支付方式

9

sarea

varchar

場館所在地區

10

scity

varchar

場館所在城市

11

sintroduction

varchar

場館介紹

(3)場館預訂情況表(stadium_reservation_information)的設計如表4-3所示。

表4-3 場館預訂情況表

編號

字段名稱

字段類型

字段說明

備注

1

sid

int

場館號

外鍵

2

sportid

int

運動分類號

外鍵

3

ssportdate

varchar

場館運動預訂日

4

ssporthour

varchar

場館運動預訂時段

5

ssportprice

varchar

場館運動預訂費用

6

ssitenumber

int

場館運動預訂場地號

7

ssubscribeid

varchar

預訂人號

外鍵

(4)訂單表(order)的設計如表4-4所示。

表4-4 訂單表

編號

字段名稱

字段類型

字段說明

備注

1

oid

int

訂單號

主鍵

2

sid

int

場館號

外鍵

3

uid

varchar

下單用戶號

外鍵

4

oprice

int

訂單總金額

5

ocreatetime

varchar

訂單創建時間

(5)場館設施表(stadium_facilities)如表4-5所示。

表4-5 場館設施表

編號

字段名稱

字段類型

字段說明

備注

1

sequipmentid

int

場館設施號

主鍵

2

sequipmentname

varchar

場館設施名

3

sequipmentdescritpion

varchar

場館設施描述

(6)運動分類表(sport)如表4-6所示。

表4-6 運動分類表

編號

字段名稱

字段類型

字段說明

備注

1

sportid

int

運動分類號

主鍵

2

sportname

varchar

運動分類名稱

3

sportdescription

varchar

運動分類描述

(7)場館運動價格表(sport_price_ground)如表4-7所示。

表4-7 場館運動價格表

編號

字段名稱

字段類型

字段說明

備注

1

sid

int

場館號

外鍵

2

sportid

int

運動分類號

外鍵

3

sportprice

float

運動價格

4

sportground

int

場館運動場地號

(8)用戶消費表(user_deposit)如表4-8所示。

表4-8 用戶消費表

編號

字段名稱

字段類型

字段說明

備注

1

open_id

varchar

用戶號

外鍵

2

damount

decimal

用戶消費金額

3

dstyle

int

用戶消費方式

4

ddate

varchar

用戶消費時間

5

ddetail

varchar

用戶消費描述

4.3 主要功能模塊實現

4.3.1 用戶登錄/登出功能實現

小程序前端頁面獲取到code和小程序的appid、appSecret通過LoginController調用微信官方提供的接口換取openid和sesssionKey,換取回來的openid調用登錄接口邏輯,判斷是否存在該用戶。若存在,更新登錄時間。若不存在則創建創建時間。繼微信登錄之后,小程序將用戶的skey放入緩存當初,以此來判斷用戶登錄狀態。而將userInfo也同樣放入緩存當中,若用戶基本信息不足,可以通過user.put放入用戶信息,后續其他頁面需要獲取用戶信息時,只需從緩存中獲取userInfo,而無需重復從數據庫中調取。

本模塊是用于微信用戶進行登錄與登出的,微信用戶通過微信打開本小程序后可以再“我的”頁面進行微信用戶登錄,點擊立即登錄按鈕后既可成功登錄,登錄成功后的微信用戶除了可以使用基本的場館預訂功能后,還可以查看本用戶在小程序內的用戶余額,以及以往的場館預訂訂單記錄并進行管理。當然本程序也支持用戶使用游客身份進行使用,在“我的”頁面點擊退出帳號后就可以成功登出,繼而使用游客身份運行本場館預訂小程序。微信用戶登錄與登出模塊實現效果如圖4-1所示:

添加圖片注釋,不超過 140 字(可選)

圖4-1 用戶登錄登出效果圖

4.3.2 用戶搜索場館功能實現

小程序頁面前端頁面獲取到用戶輸入的內容后,通過js轉發到StadiumController調用場館搜索接口,然后在數據庫中查找符合要求的字段。檢索成功后返回一個場館實體類,在StadiumController內將實體類轉化成Json串返回給小程序js,小程序js動態獲取后在前端頁面更新。小程序獲取用戶的定位權限后,通過導入騰訊地圖小程序JavaScript SDK調用getCityList()方法獲取城市名,成功調用后,將城市名放入緩存中,并在小程序首頁顯示,若用戶在城市索引列表點擊其它城市后,更新緩存中的城市名值,并動態更新小程序前端頁面。通過導入騰訊地圖小程序JavaScript SDK調用CalculateDistance()距離結算方法,起點坐標默認不填(用戶所在位置),終點位置根據場館地址調用geocoder()地址解析方法將地址轉化成經緯度坐標,最后計算起點坐標和終點坐標的距離顯示在小程序前端頁面。

本模塊是本系統用戶進入小程序后所顯示的首頁,而本模塊會根據用戶的當前定位來按照距離來顯示附近的所有體育館。體育館的信息包括名稱,運動,地址,距離,以及是否支持支付方式和小時消費。而本模塊除了以上功能還包括可以點擊上方的運動圖標來進行指定運動分類的場館篩選,而點擊左上方的城市還可以進行指定城市的場館篩選,而點擊最上方的搜索欄也可以根據場館名進行場館搜索。首頁模塊實現效果如圖4-2所示:

添加圖片注釋,不超過 140 字(可選)

圖4-2 用戶場館搜索效果圖

4.3.3 用戶瀏覽場館信息功能實現

通過場館號唯一主鍵,在stadium表內查詢出場館名稱、場館地址、場館營業時間、場館聯系電話、場館交通方式、場館介紹、場館圖片路徑,而場館所支持運動、場館運動具體價格根據sport_price_ground映射表查詢,場館支持設施根據stadium_facilities映射表查詢,以上都是根據場館號進行一對多關聯查詢。

本模塊是場館的具體功能模塊,在本模塊中用戶除了可以查看基本的場館信息(場館名稱、場館地理位置、場館營業時間、聯系電話),用戶還可以點擊場館聯系電話旁邊小電話按鈕直接撥打場館聯系電話,點擊產管的定位按鈕直接使用騰訊地圖進行定位并導航,查看場館所支持的設施,如停車位、洗浴設施等,查看場館所支持的交通方式以及場館介紹,場館功能模塊實現效果如圖4-3:

添加圖片注釋,不超過 140 字(可選)

圖4-3 用戶瀏覽場館信息效果圖

4.3.4 用戶預訂場館功能實現

在場館詳細信息展示功能選中運動和具體日期后帶場館id,運動id,具體日期跳轉到場館預約頁面,小程序stadium.js獲取輸入參數后,根據場館id、運動id獲取場館的該運動的場地數,以及場館的營業時間。從而在前端展示場館預訂時間表,X軸為場館的場地數,Y軸為場館的營業時間。若預約的時間表為今天,則判斷時段是否過期,若已過期,則在前端樣式為灰色不可選。再根據stadium_reservation_information表來查詢該場館預訂情況,若場館id、運動id、場地號、時段、日期都符合的話則前端樣式為灰色不可選。每個預約塊都有選中狀態,若用戶點擊后,則會動態更新前端樣式為藍色選中的,左下角會實時更新選中的場地預訂總金額。

本模塊是場館預訂模塊,場館預訂是幫助用戶和場館方合理效率使用場館的重要功能,用戶通過點擊指定的場館,選擇具體的運動、日期、時間支付后就可以成功預訂,而在預訂的途中,過期的時間、被人預訂過的場地都是顯示不可預訂的,而在預訂完成后,會顯示訂單確定頁面,其中包括預訂的場館、總金額、預訂運動、場地、時間的確認,用戶點擊再確認后就跳轉到支付頁面,若用戶余額充足便會顯示支付成功后跳轉回首頁,若余額不足則會跳轉到余額充值頁面。場館預訂模塊實現效果如圖4-4示:

添加圖片注釋,不超過 140 字(可選)

圖4-4 用戶預訂場館效果圖

4.3.5 用戶管理余額功能實現

在場館預訂支付時調用余額判斷接口,若訂單的總金額大于用戶的余額值大小,則跳轉用戶的余額充值頁面。若訂單的總金額小于用戶的余額值大小,則更新用戶的實時余額。余額明細查看根據用戶open_id查詢user_deposit表展示消費金額、支出/收入、消費描述、消費時間。

本模塊是用戶余額管理模塊,用戶在“我的”頁面內點擊我的錢包即可跳轉到余額管理頁面,在本頁面最上方顯示用戶當前余額,若余額不足可點擊“充值”按鈕彈出充值框進行充值,充值框內可選擇充值金額和充值方式,因本系統暫時未得到微信支付的權限,所以現在只能選擇虛擬微信支付,金額有標準的六種充值金額,若用戶點擊其他金額也可輸入自己想充值的按鈕進行充值,充值成功后會顯示充值成功頁面。若用戶想查看自己的消費記錄,在我的錢包頁面點擊交易記錄按鈕即可查看自己近期的消費記錄,有收入/支出、消費簡介、金額、時間的信息,用戶余額管理模塊實現效果如圖4-5所示:

添加圖片注釋,不超過 140 字(可選)

圖4-5 用戶管理余額效果圖

4.3.6 管理員登錄功能實現

根據username、password、code、uuid進行登錄判斷,調用Login()方法成功后生成令牌,SpringSecurity在每次頁面跳轉時都需要進行令牌驗證。

本模塊是后臺管理系統的登錄模塊,除了賬號和密碼驗證之外,本登陸系統還要使用驗證碼來進行登陸,而因為考慮到每個用戶登陸時可能需要多次調用到驗證碼圖片,所以運用redis緩存數據庫來存放驗證碼,減少驗證碼的調用時間,提升用戶體驗,后臺登錄模塊如圖4-6所示:

添加圖片注釋,不超過 140 字(可選)

圖4-6 后臺登錄頁面

4.3.7 管理員管理功能實現

根據SpringSecurity授權功能判斷管理員是否存在該權限標識符,若不符合則判斷該功能不可用。通過前端v-model綁定表單輸入可以進行多條件檢索場館、微信用戶、訂單,通過字典設置可讓用戶性別、訂單狀態進行下拉框顯示,增改刪都面罩層,進入該頁面時設置該窗口顯示屬性為false,若用戶點擊指定按鈕則更改為true,從而來動態顯示增加、刪除、修改顯示框。

本模塊是后臺管理系統的場館管理模塊,只要管理用戶符合指定權限,可以根據場館名稱、場館所在地區、場館所在城市多條件進行查詢場館,除了可以修改場館信息和刪除場館,還可以對場館進行運動分類調價,后臺場館管理模塊實現效果如圖4-7所示:

添加圖片注釋,不超過 140 字(可選)

圖4-7后臺場館管理頁面

本模塊是后臺管理系統的微信用戶管理模塊,只要管理用戶符合指定權限,可以根據市、省、國、用戶性別、昵稱多條件進行查詢微信用戶,可以修改微信用戶信息和刪除微信用戶,后臺微信用戶管理模塊實現效果如圖4-8所示:

添加圖片注釋,不超過 140 字(可選)

圖4-8 后臺微信用戶管理頁面

本模塊是后臺管理系統的訂單管理模塊,只要管理用戶符合指定權限,可以根據訂單號、訂單狀態多條件進行查詢微信用戶,可以修改訂單信息和刪除訂單,后臺訂單管理模塊實現效果如圖4-9所示:

添加圖片注釋,不超過 140 字(可選)

圖4-9 后臺訂單管理頁面

4.4 本章小結

本章分別介紹了技術選型以及技術框架,其中開發技術中包括了JAVA編程語言、Redis緩存技術、Mysql數據庫,而開發框架分別介紹了SpringBoot框架、Vue.js框架以及MyBatis框架。并分別對以上框架和技術進行了介紹和特點的描述。然后統的功能的實現要點、實現效果與實現步驟,也有相應的圖片展示。最后再詳細介紹本系統的數據庫實現,也就是每張關鍵數據表以及表的內字段以及備注。

第五章 系統測試

經過了系統需求分析、系統總體設計、數據庫需求分析以及數據庫邏輯結構、物理結構設計,最后來到了我們的系統測試環節。而本次測試的主要目的就是檢驗本場館預約系統能否正常實現預期內的各種功能,若出現報錯情況應當立即找出報錯原因并解決問題。

5.1 測試環境描述

因為本系統是在網頁和小程序端同時開發的,所以我選擇在電腦和手機端的微信應用軟件對本系統進行全面測試。

電腦配置

  1. CPU:Intel Core i7-6700HQ(2.6GHz/L3 6M)

  2. ROM:8G

  3. OS:Window 10

  4. DB:Mysql 5.5

  5. 瀏覽器:谷歌瀏覽器

手機配置

  1. 硬件:iPhone 8 plus,iOS 13.3

  2. 軟件:iOS微信7.0.12,微信小程序的“場館預約系統”

5.2 測試用例執行情況

本測試方法采用人工測試

需求功能名稱

測試用例名稱

執行說明

執行情況

是否通過

微信用戶登錄與登出

登錄與登出測試

測試用戶是否可以使用微信用戶身份登錄小程序;測試用戶登錄與登出是否切換流暢;

良好

瀏覽場館

瀏覽場館測試

測試用戶進入小程序首頁時是否能正常顯示場館;測試用戶查看場館信息時是否有顯示錯誤;

良好

搜索場館

場館搜索測試

測試用戶不輸入場館名稱時是否顯示全部場館;測試用戶輸入部分場館名稱是否能搜索到制定場館;測試用戶搜索到的場館是否與實際場館有信息出入錯誤;

良好

城市定位

城市定位測試

測試用戶進入城市選擇列表時是否能正常顯示城市索引;測試用戶選定指定城市后定位信息不出入;

良好

運動圖標索引

運動圖標索引測試

測試用戶點擊運動圖標時是否能正確索引到符合的運動場館;

良好

場館功能

場館功能測試

測試用戶是否能夠正確對場館進行定位導航功能;測試用戶是否能夠正常撥打場館的聯系電話;測試用戶是否能查看場館的建議交通方式;測試用戶是否能查看場館的場館介紹;

良好

場館預訂

場館預訂測試

測試用戶預訂時過期時間是否不可選;測試用戶預訂時被預訂過的場地是否不可選;測試用戶選擇多個目標時總價是否實時更新;

良好

訂單管理

訂單管理測試

測試用戶是否可以查詢自己的所有訂單;測試用戶是否可以對訂單進行取消、刪除操作;測試用戶是否可以點擊再來一單跳轉到指定場館;

良好

對于本系統的缺陷統計有以下結果:

軟件在支付方面無法調用微信支付接口,以及在跳轉預約頁面,顯示預約表格時會有些許延遲[30]。

5.3 測試設計評估及改進

(1)本次測試通過測試場館預約小程序運行是否正常、搜索信息實時性展示測試、預約信息實時更新測試、訂單狀況實時更新功能測試來進行軟件性能評估;

(2)場館預約小程序整體狀況相對較好,不存在過多的缺陷,基本能夠滿足用戶各項功能的需求;

(3)測試用例遍及了所有功能,但是由于測試的人數不夠多,測試數有限,所以功能的參考也具有局限性;

(4)該場館預約小程序也存在一些缺陷,比如微信支付接口并沒有實現,導致用戶付款時并不能體驗到真實的付款行為。

5.4 本章小結

本章在了解了系統測試的目的之后,根據所描述的測試環境對體育場館預約系統進行了整體的測試,最后對測試結果進行評估,指出系統本身還存在的問題并進行改進。

第六章 總結

本系統是一個基于Java的場館預約系統,而本系統也是用了雙平臺進行開發,以小程序端來面向用戶,而網頁端來面向管理員進行管理。在設計的準備過程中,需要閱讀大量的相關文獻,對系統的背景有深入的了解以及自己獨到的分析。

而本系統的設計時先從需求分析開始,從體育場館再到小程序,最后通過可行性對整個系統進行分析,將重點放在最大化節省用戶預訂場館的總時間,以及平衡用戶與場館方的場地沖突問題。然后根據以上需求設計系統流程圖,先搞清楚用戶使用時的使用順序,確定了整個系統大致的框架后再進行數據設計。就要著手開始編程,一開始先著力于前端頁面的設計與優化,前端頁面是基于微信原生與Vue和ElementUI進行設計的,在完成了前端頁面后再開始編寫模塊的業務邏輯。而本系統也包括了微信用戶登錄與登出、場館瀏覽、場館搜索、城市定位、場館預訂、訂單管理、余額管理、管理員管理等功能,而這些后臺功能則是基于SpringBoot框架實現。最后對整個系統進行人工測試,根據測試用例進行一項項功能測試,根據測試評估得出本系統的瑕疵,如支付方式因權限問題無法調用真實的微信支付接口,小程序端與網頁端的功能不夠契合。

在以后的本系統開發中,需要進一步獲取微信支付接口的權限,這樣能使本系統更趨于真實以及實用,其次能夠繼續添加場館預約后臺管理系統的功能,使后臺管理系統更加人性化。


參 考 文 獻

[1]GB/T 7714繆敬. 移動互聯網對智能手機的影響[J]. 中興通訊技術, 2009(04):37-39.

[2]齊新. 北京奧運會后中國全民健身運動的探究[D]. 蘭州理工大學, 2011.

[3]彭林. 互聯網背景下體育場館管理模式研究[D]. 集美大學.

[4]劉崢, 唐炎. Public Sports Service Policy Execution Performance, Causes and Treatment%公共體育服務政策執行阻滯的表現、成因及治理[J]. 體育科學, 2014, 034(010):78-82.

[5]才化冰, 包仁庫, 莘丹丹, et al. 對知識分子參加體育運動重要性的研究[J]. 黑龍江科技信息, 2004, 000(005):65.

[6]王艷玲.基于互聯網體育場館預約研究[J]. 新教育時代電子雜志:教師版, 2017(25).

[7]教育局、國家體育總局.關于推進學校體育場館向社會開發的實施意見,2017.

[8]黃劍輝, 秦媛, 康秀玲, et al. 北京市東城區中小學校運動場地及體育設施現狀評價[J]. 中國學校衛生, 2008(06):81-82.

[9]付良藝. 城市公共體育場館服務需求研究[D].

[10]鄒飛鵬. 國內外大型體育場館經營管理解讀[J]. 商場現代化, 2007(27):70-71.

[11]雷厲. 國內外體育場館政策及對我國體育場館未來發展的啟示[J]. 體育文化導刊, 2000(3):12-14.

[12]衣海永, 田鈺佳. 媒介融合背景下運動健身APP的現狀與趨勢研究[J]. 當代體育科技, 2018, 008(004):198,200.

[13]陳亮, 陳永浩. 基于移動互聯網的體育場館運營管理系統研究[J]. 經濟研究導刊, 2017(12).

[14]陳晴. Research on the Relationship between the Interesting of Youngster Students and Situation of Sports Place%青少年學生的體育興趣與運動場館設施狀況關系分析[J]. 南京體育學院學報(社會科學版)(3):81-83.

[15]蔣媛. 上海市公共體育場館服務的居民滿意度與需求研究[D].

[16]劉玉佳. 微信"小程序"開發的系統實現及前景分析[J]. 信息通信, 2017(1).

[17]喻國明, 程思琪. 從“連接”到“場景”:互聯網發展的重要進階——試析微信小程序的價值邏輯與市場版圖[J]. 新聞大學, 2018, No.147(01):126-132+151+158-159.

[18]劉紅衛. 微信小程序應用探析%Analysis on application of WeChat small program[J]. 無線互聯科技, 2016, 000(023):11-12,40.

[19]郭全中. 小程序及其未來[J]. 新聞與寫作, 2017(3).

[20]宋順, 劉志清, 王永平. 微信公眾號優化體育場館運營策略分析[J]. 體育文化導刊, 2019, 199(01):87-91.

[21]吳俊杰.基于微信小程序的高校體育場館訂場管理系統的應用[J].智庫時代,2020(05):243-244.

[22]劉美琪, 李婉萍, 孫方斌, et al. A Web-based Stadium Booking System%基于Web的體育場館預約系統[J]. 電子科技, 029(004):104-106,110.

[23]林聃. 呼和浩特乒羽中心綜合管理系統設計與實現[D].

[24]馮國寶. 體育場館在線預定平臺的設計與實現[D]. 電子科技大學.

[25]邢俊鑫. 基于Java編程語言的計算機軟件開發技術[J]. 電子技術與軟件工程, 2017(23):57-58.

[26]呂宇琛. SpringBoot框架在web應用開發中的探討[J]. 科技創新導報, 2018, v.15;No.440(08):174+179.

[27]榮艷冬. Application Research of Mybatis Persistence Layer Framework%關于Mybatis持久層框架的應用研究[J]. 信息安全與技術, 2015, 006(012):86-88.

[28]邱書洋. Redis緩存技術研究及應用[D]. 2016.

[29]陳錦偉. 基于MySQL的空間數據庫關鍵技術研究[D]. 南京郵電大學, 2013.

[30]楊波, 吳際, 徐珞, et al. 一種軟件測試需求建模及測試用例生成方法[J]. 計算機學報, 2016, 37(03):522-538.


致 謝

大學的四年時間已悄然離去,四年間,我在東軟學院所學到的知識數不勝數,而本次的畢業設計也讓我學會了如何在實際情況靈活地運動它們。我要感謝東軟學院,它將我孕育成才,更好地為社會做貢獻。我要感謝我的指導老師陳子翔老師,我的導師在本次畢業設計與論文的選題、設計、資料收集工作中都做了悉心的指導,我的導師平常對待我們的論文總是非常嚴謹,也讓我們的論文能有高質量以及標準的格式。而他積極向上的態度更是感染了我們,他讓我們不要老是滿足于當前的設計,要學會改進到符合現代社會的設計。而我也要感謝我四年間的大學生涯遇到了其他老師,我得到了他們的關心與幫助。在此,謹向老師們致以衷心的感謝和最崇高的敬意。

感謝我的同學們,在日常的宿舍生活中,我們經常一起探討大家的畢業設計進度,我們常常會指出他人在設計上的不足并幫助他進行改進,而這種積極向上的氛圍,也讓我在完成畢業設計的過程中更有動力。

感謝我的父母對于我二十多年的辛勤付出和孜孜教導,而我也將用豐富的知識報答社會,報答父母!

最后,我要向在百忙之中抽時間對本人論文答辯進行審閱、評議的各位老師再次表示感謝!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/75783.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/75783.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/75783.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

筆記:純真IP庫

最近需要使用到ip解析成對應的地域,查找了一些資料,發現純真ip庫,這個比較好用,而且社區版可以獲得免費授權。 純真ip庫官網地址:https://www.cz88.net/ python版本git地址:https://github.com/tagphi/cz…

骨密度以及骨密度測量,測量方案,意義;提高;實現方案

骨密度及骨密度測量 骨密度(Bone Mineral Density, BMD) 是指骨骼單位體積或單位面積內礦物質(主要是鈣和磷)的含量,是評估骨骼強度的重要指標。骨密度降低可能導致骨質疏松,增加骨折風險。 簡單分析效果&…

MySQL 體系結構與存儲引擎

目錄 一、MySQL 體系結構 1. 連接層 (Connection Layer) 2. 服務層 (Server Layer) 3. 存儲引擎層 (Storage Engine Layer) 二、MySQL 核心存儲引擎比較 1. InnoDB (默認引擎) 2. MyISAM 3. Memory (HEAP) 4. 其他存儲引擎 三、InnoDB 存儲引擎深度解析 1. 核心架構組…

知識就是力量——物聯網應用技術

基礎知識篇 一、常用電子元器件1——USB Type C 接口引腳詳解特點接口定義作用主從設備關于6P引腳的簡介 2——常用通信芯片CH343P概述特點引腳定義 CH340概述特點封裝 3——蜂鳴器概述類型驅動電路原文鏈接 二、常用封裝介紹貼片電阻電容封裝介紹封裝尺寸與功率關系&#xff1…

vue復習1~45

1.關于vue 要理解記憶規則,可以到官網上去找 vue的兩種使用方式 vue核心包開發 場景:局部模塊改造vue核心包 & vue插件 工程化開發 場景:整站開發 2.創建vue實例 構建用戶頁面->創建vue實例初始化渲染 學習階段用開發版本 3.插值…

Netty和Project Reactor如何共同處理大數據流?

在處理大數據流時,Netty和Project Reactor可以協同工作,充分利用Netty的高性能非阻塞IO和Project Reactor的響應式編程模型,實現高效的數據處理和背壓控制。以下是如何共同處理大數據流的詳細步驟和示例代碼: ### 1. Netty和Proj…

【Nginx】location匹配模式與規則

文章目錄 一、環境二、匹配模式1. 精準模式2. 前綴模式(不繼續匹配正則)3. 前綴模式(繼續匹配正則)4. 正則模式(大小寫敏感)5. 正則模式(大小寫不敏感) 三、需要注意的地方1. 命中多…

JavaScript基礎-定時器

在Web開發中,有時我們需要延遲執行某些操作或者定期重復執行某段代碼。JavaScript提供了強大的定時器功能,使得這些需求變得簡單易行。本文將詳細介紹JavaScript中的定時器,包括setTimeout和setInterval函數的使用方法、注意事項以及一些實際…

【Python】and 和 or 的返回值

文章目錄 選項 A選項 B選項 C選項 D正確答案 以下哪些選項輸出結果為True ( ) A、print(2 0 or True) B、print(2 ! 0 or True) C、print(str(2) and str(0) or True) D、print(str(2) or str(0) or True)要確定哪些選項的輸出結果為 True,我們需要分析每個表達式的…

【deepseek 學c++】weakptr引用場景

std::weak_ptr 是 C 中與 std::shared_ptr 配合使用的智能指針,它本身不擁有資源的所有權,僅觀察資源的狀態,主要用于解決 shared_ptr 的循環引用問題和臨時訪問共享資源的需求。以下是 weak_ptr 的典型應用場景和核心價值:![ 為…

新手SEO優化實戰快速入門

內容概要 對于SEO新手而言,系統化掌握基礎邏輯與實操路徑是快速入門的關鍵。本指南以站內優化為切入點,從網站結構、URL設計到內鏈布局,逐層拆解搜索引擎友好的技術框架;同時聚焦關鍵詞挖掘與內容策略,結合工具使用與…

如何用Redis統計網站的UV

在 Java 項目中使用 Redis 統計網站的 UV(獨立訪客數),我們可以利用 Redis 提供的 HyperLogLog 數據結構。HyperLogLog 適合用來做基數統計,它在空間復雜度上非常高效,可以在存儲大量數據的情況下,提供非常…

Android系統的安全問題 - Android的啟動時驗證

Android 啟動時驗證(Verified Boot) Android 的 啟動時驗證(Verified Boot) 是一項關鍵安全機制,用于確保設備啟動過程中加載的所有系統鏡像(如 Bootloader、內核、系統分區)未被篡改&#xff…

【操作系統】(四)體系結構

(一)大內核與微內核 把橘色部分劃分到內核中的操作系統屬于大內核,不把橘色劃到內核中的操作系統屬于微內核 大內核與微內核的具體區別: (二)計算機的層次結構 (三)操作系統內核非內…

Kotlin 協程官方文檔知識匯總(一)

1、協程基礎 Kotlin 是一門僅在標準庫中提供最基本底層 API 以便其他庫能夠利用協程的語言。與許多其他具有類似功能的語言不同,async 與 await 在 Kotlin 中并不是關鍵字,甚至都不是標準庫的一部分。此外,Kotlin 的掛起函數概念為異步操作提…

MySQL 的 JSON 查詢

MySQL 的 JSON 路徑格式 MySQL 使用特定的 JSON 路徑表達式語法來導航和提取 JSON 文檔中的數據 基本結構 MySQL 中的 JSON 路徑遵循以下通用格式 $[路徑組件]路徑組件詳解 | 操作符 | 描述 | 示例 | | ----------- | --------- | ----------…

Wi-SUN技術,強勢賦能智慧城市構筑海量IoT網絡節點

在智慧城市領域中,當一個智慧路燈項目因信號盲區而被迫增設數百個網關時,當一個傳感器網絡因入網設備數量爆增而導致系統通信失效時,當一個智慧交通系統因基站故障而導致交通癱瘓時,星型網絡拓撲與蜂窩網絡拓撲在構建廣覆蓋與高節…

Leetcode13-羅馬數字轉整數

題目鏈接&#xff1a;13. 羅馬數字轉整數 - 力扣&#xff08;LeetCode&#xff09; 如同上一題&#xff0c;直接用暴力法破解&#xff0c;簡單好理解 int romanToInt(char* s) {int len strlen(s);int res 0;for(int i 0; i < len; i) {switch(s[i]) {case M:res 1000…

Linux系統加固筆記

檢查口令為空的賬戶 判斷依據&#xff1a;存在則不符合 特殊的shell a./bin/false:將用戶的shell設置為/bin/false&#xff0c;用戶會無法登錄&#xff0c;并且不會有任何提示信息b./sbib/nologin&#xff1a;nologin會禮貌的向用戶發送一條消息&#xff0c;并且拒絕用戶登錄…

23種設計模式-責任鏈(Chain of Responsibility)設計模式

責任鏈設計模式 &#x1f6a9;什么是責任鏈設計模式&#xff1f;&#x1f6a9;責任鏈設計模式的特點&#x1f6a9;責任鏈設計模式的結構&#x1f6a9;責任鏈設計模式的優缺點&#x1f6a9;責任鏈設計模式的Java實現&#x1f6a9;代碼總結&#x1f6a9;總結 &#x1f6a9;什么是…