目 ?錄
摘要
1 緒論
1.1開發(fā)背景
1.2研究現(xiàn)狀
1.3springboot框架介紹
1.4小程序框架以及目錄結(jié)構(gòu)介紹
2?Springboot智慧旅游平臺(tái)小程序系統(tǒng)分析
2.1 可行性分析
2.1.1 技術(shù)可行性分析
2.1.2 經(jīng)濟(jì)可行性分析
2.1.3 操作可行性分析
2.2 系統(tǒng)流程分析
2.2.1 數(shù)據(jù)添加流程
2.2.2?數(shù)據(jù)修改流程
2.2.3數(shù)據(jù)刪除流程
2.3 系統(tǒng)功能分析
2.3.1 功能性分析
2.3.2 非功能性分析
2.4 系統(tǒng)用例分析
2.5本章小結(jié)
3 Springboot智慧旅游平臺(tái)小程序總體設(shè)計(jì)
3.1 系統(tǒng)功能模塊設(shè)計(jì)
3.1.1整體功能模塊設(shè)計(jì)
3.1.2用戶模塊設(shè)計(jì)
3.1.3 評(píng)論管理模塊設(shè)計(jì)
3.1.4景區(qū)管理模塊設(shè)計(jì)
3.2 數(shù)據(jù)庫設(shè)計(jì)
3.2.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)
3.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)
3.4本章小結(jié)
4?Springboot智慧旅游平臺(tái)小程序詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)
4.1用戶功能模塊
4.1.1 前臺(tái)首頁界面
4.1.2 用戶注冊(cè)界面
4.1.3 用戶登錄界面
4.1.4修改密碼界面
4.1.5搜索景區(qū)信息界面
4.1.6 景區(qū)詳情界面
4.1.7體旅游資訊界面
4.2管理員功能模塊
4.2.1 網(wǎng)站管理界面
4.2.2 內(nèi)容管理界面
4.2.3 人員管理界面
4.2.4模塊管理界面
5系統(tǒng)測(cè)試
5.1系統(tǒng)測(cè)試的目的
5.2 系統(tǒng)測(cè)試用例
5.3 系統(tǒng)測(cè)試結(jié)果
結(jié)論
參考文獻(xiàn)
致??謝
摘要
智慧旅游是智慧城市建設(shè)的重要組成部分,為了使旅游的全過程實(shí)現(xiàn)信息化,智能化,建設(shè)一個(gè)功能全面的智慧旅游平臺(tái)小程序非常重要和必要。以旅游行業(yè)的整體需求為目標(biāo),以物聯(lián)網(wǎng)系統(tǒng)結(jié)構(gòu)為理論依據(jù),以物聯(lián)網(wǎng)關(guān)鍵技術(shù)為技術(shù)基礎(chǔ),以應(yīng)用解決方案為核心,對(duì)智慧旅游平臺(tái)進(jìn)行了整體架構(gòu),設(shè)計(jì)了智能終端子平臺(tái),智能管理子平臺(tái),智能營銷子平臺(tái),從而實(shí)現(xiàn)了服務(wù)游客智慧化,主管部門管理智慧化,商家營銷智慧化。
本次智慧旅游平臺(tái)小程序主要是以IDEA作為系統(tǒng)的開發(fā)工具,以Springboot技術(shù)作為功能實(shí)現(xiàn)的語言基礎(chǔ),使用MySQL作為系統(tǒng)景區(qū)信息、美食信息、游記、土特產(chǎn)等管理中心,幫助工作人員解決信息的存儲(chǔ)問題和管理問題,主要解決了用戶的的數(shù)據(jù)管理功能,并且配合使HTML5網(wǎng)頁技術(shù)實(shí)現(xiàn)系統(tǒng)頁面的布局,做到功能模塊布局清晰,系統(tǒng)界面美觀大方。而系統(tǒng)的基本框架是基于B/S架構(gòu),實(shí)現(xiàn)了系統(tǒng)角色的分工,確保不同角色的功能權(quán)限能夠完美執(zhí)行,在通過大量的實(shí)時(shí)數(shù)據(jù)對(duì)系統(tǒng)功能進(jìn)行精準(zhǔn)測(cè)試,保證系統(tǒng)功能實(shí)現(xiàn)的正確性和準(zhǔn)確性。
關(guān)鍵詞:智慧旅游;Springboot技術(shù)
Abstract
Smart tourism is an important part of smart city construction. In order to realize informatization and intelligence in the whole process of tourism, it is very important and necessary to build a comprehensive smart tourism platform applet. With the overall demand of the tourism industry as the goal, the system structure of the Internet of Things as the theoretical basis, the key technology of the Internet of Things as the technical basis, and the application solution as the core, the intelligent tourism platform has been constructed as a whole, and the intelligent terminal platform, intelligent management sub-platform, and intelligent marketing sub-platform have been designed, thus realizing the intelligent service of tourists, the intelligent management of competent departments, and the intelligent marketing of businesses.
This smart tourism platform applet mainly uses IDEA as the development tool of the system, Springboot technology as the language basis for function realization, and MySQL as the management center of the system's scenic spot information, food information, travel notes, local specialties, etc., to help staff solve the storage and management problems of information, mainly solve the user's data management function, and cooperate with HTML5 web technology to realize the layout of the system's pages, Make the functional module layout clear and the system interface beautiful and generous. The basic framework of the system is based on the B/S architecture, which realizes the division of system roles, ensures that the functional permissions of different roles can be perfectly executed, and accurately tests the system functions through a large number of real-time data to ensure the correctness and accuracy of the realization of the system functions.
Key words:Smart tourism; Springboot technology
1 緒論
1.1 開發(fā)背景
在發(fā)展迅速的信息化時(shí)代中,越來越多互聯(lián)網(wǎng)科技走進(jìn)人們的生活,人們開始接受互聯(lián)網(wǎng)帶來的方便快捷的服務(wù),同時(shí)享受這互聯(lián)網(wǎng)帶來的沖擊與。智慧旅游平臺(tái)小程序是日常生活中不可或缺的網(wǎng)站,但是由于各種無法預(yù)測(cè)的現(xiàn)實(shí)原因讓它無法普遍實(shí)現(xiàn)出來,。如果時(shí)間久了,管理十分不便利,存在誤差,查詢難的現(xiàn)象,一旦數(shù)據(jù)過多,人工管理方式就很難維持。隨著信息技術(shù)的應(yīng)用拓展,逐漸引用了信息化技術(shù)管理,逐漸取代了人工管理模式,采用計(jì)算機(jī)系統(tǒng)來管理掛號(hào)信息,智能的管理減少了人力物力財(cái)力,節(jié)省了管理的時(shí)間和空間,提升了工作的準(zhǔn)確率和效率。本次系統(tǒng)開發(fā),主要以智慧旅游平臺(tái)小程序?yàn)閷?duì)象,根據(jù)需求來完成功能設(shè)計(jì)。
1.2研究現(xiàn)狀
隨著社會(huì)的發(fā)展和科學(xué)技術(shù)的進(jìn)步,互聯(lián)網(wǎng)技術(shù)越來越受歡迎。網(wǎng)絡(luò)傳播的生活方式逐漸受到廣大人民群眾的喜愛。越來越多的互聯(lián)網(wǎng)愛好者開始在互聯(lián)網(wǎng)上滿足他們的基本需求,同時(shí)逐漸進(jìn)入各個(gè)用戶的生活起居。互聯(lián)網(wǎng)具有許多優(yōu)點(diǎn),例如便利性,速度,高效率和低成本。因此,類似于智慧旅游,滿足用戶工作繁忙的需求,不僅是方便用戶隨時(shí)查看信息的途徑,而且還能提高管理效率。
本文首先以智慧旅游平臺(tái)小程序過程的基本問題作為研究對(duì)象。在開發(fā)系統(tǒng)之前,我們對(duì)現(xiàn)有狀況進(jìn)行了詳細(xì)的調(diào)查和分析。最后,我們利用計(jì)算機(jī)技術(shù)開發(fā)了一套完整合適的智慧旅游平臺(tái)小程序。該系統(tǒng)的實(shí)現(xiàn)主要優(yōu)勢(shì)是:該系統(tǒng)主要采用計(jì)算機(jī)技術(shù)開發(fā),它方便快捷;系統(tǒng)可以通過管理員界面查看用戶的所有信息管理。
智慧旅游平臺(tái)小程序軟件是一款方便、快捷、實(shí)用的信息服務(wù)查詢軟件。隨著智能網(wǎng)絡(luò)在全球市場(chǎng)的不斷普及以及各種智能平臺(tái)的使用,系統(tǒng)的開發(fā)與人們的日常需求相關(guān),作為中國主流智能的技術(shù)開發(fā)系統(tǒng),自然需要這樣的軟件來滿足更多用戶的需求和體驗(yàn)。
1.3springboot框架介紹
Spring框架是Java平臺(tái)上的一種開源應(yīng)用框架,提供具有控制反轉(zhuǎn)特性的容器。盡管Spring框架自身對(duì)編程模型沒有限制,但其在Java應(yīng)用中的頻繁使用讓它備受青睞,以至于后來讓它作為EJB(EnterpriseJavaBeans)模型的補(bǔ)充,甚至是替補(bǔ)。Spring框架為開發(fā)提供了一系列的解決方案,比如利用控制反轉(zhuǎn)的核心特性,并通過依賴注入實(shí)現(xiàn)控制反轉(zhuǎn)來實(shí)現(xiàn)管理對(duì)象生命周期容器化,利用面向切面編程進(jìn)行聲明式的事務(wù)管理,整合多種持久化技術(shù)管理數(shù)據(jù)訪問,提供大量?jī)?yōu)秀的Web框架方便開發(fā)等等。Spring框架具有控制反轉(zhuǎn)(IOC)特性,IOC旨在方便項(xiàng)目維護(hù)和測(cè)試,它提供了一種通過Java的反射機(jī)制對(duì)Java對(duì)象進(jìn)行統(tǒng)一的配置和管理的方法。Spring框架利用容器管理對(duì)象的生命周期,容器可以通過掃描XML文件或類上特定Java注解來配置對(duì)象,開發(fā)者可以通過依賴查找或依賴注入來獲得對(duì)象。Spring框架具有面向切面編程(AOP)框架,SpringAOP框架基于代理模式,同時(shí)運(yùn)行時(shí)可配置;AOP框架主要針對(duì)模塊之間的交叉關(guān)注點(diǎn)進(jìn)行模塊化。Spring框架的AOP框架僅提供基本的AOP特性,雖無法與AspectJ框架相比,但通過與AspectJ的集成,也可以滿足基本需求。Spring框架下的事務(wù)管理、遠(yuǎn)程訪問等功能均可以通過使用SpringAOP技術(shù)實(shí)現(xiàn)。Spring的事務(wù)管理框架為Java平臺(tái)帶來了一種抽象機(jī)制,使本地和全局事務(wù)以及嵌套事務(wù)能夠與保存點(diǎn)一起工作,并且?guī)缀蹩梢栽贘ava平臺(tái)的任何環(huán)境中工作。Spring集成多種事務(wù)模板,系統(tǒng)可以通過事務(wù)模板、XML或Java注解進(jìn)行事務(wù)配置,并且事務(wù)框架集成了消息傳遞和緩存等功能。Spring的數(shù)據(jù)訪問框架解決了開發(fā)人員在應(yīng)用程序中使用數(shù)據(jù)庫時(shí)遇到的常見困難。它不僅對(duì)Java:JDBC、iBATS/MyBATIs、Hibernate、Java數(shù)據(jù)對(duì)象(JDO)、ApacheOJB和ApacheCayne等所有流行的數(shù)據(jù)訪問框架中提供支持,同時(shí)還可以與Spring的事務(wù)管理一起使用,為數(shù)據(jù)訪問提供了靈活的抽象。Spring框架最初是沒有打算構(gòu)建一個(gè)自己的WebMVC框架,其開發(fā)人員在開發(fā)過程中認(rèn)為現(xiàn)有的StrutsWeb框架的呈現(xiàn)層和請(qǐng)求處理層之間以及請(qǐng)求處理層和模型之間的分離不夠,于是創(chuàng)建了SpringMVC。
1.4小程序框架以及目錄結(jié)構(gòu)介紹
整個(gè)小程序框架系統(tǒng)分為兩部分:邏輯層和視圖層。小程序開發(fā)框架的目標(biāo)是通過盡可能簡(jiǎn)單、高效的方式讓開發(fā)者可以在微信中開發(fā)具有原生小程序體驗(yàn)的服務(wù)。小程序在視圖層與邏輯層間提供了數(shù)據(jù)傳輸和事件系統(tǒng),提供了自己的視圖層以及邏輯層框架,讓開發(fā)者能夠?qū)W⒂跀?shù)據(jù)與邏輯??蚣艿暮诵氖且粋€(gè)響應(yīng)的數(shù)據(jù)綁定系統(tǒng),可以讓數(shù)據(jù)與視圖非常簡(jiǎn)單地保持同步。在邏輯層做數(shù)據(jù)修改,在視圖層就會(huì)做相應(yīng)的更新??蚣芴峁┝艘惶谆A(chǔ)的組件,這些組件自帶微信風(fēng)格的樣式以及特殊的邏輯,開發(fā)者可以通過組合基礎(chǔ)組件,創(chuàng)建出強(qiáng)大的微信小程序。
2?Springboot智慧旅游平臺(tái)小程序系統(tǒng)分析
2.1 可行性分析
2.1.1 技術(shù)可行性分析
在分析了Springboot智慧旅游平臺(tái)小程序的真實(shí)需求后,將Springboot智慧旅游平臺(tái)小程序所需要的角色劃分整理成了下圖2-1和圖2-2。
從開發(fā)工具來看,由于Springboot智慧旅游平臺(tái)小程序是基于JAVA技術(shù)的,因此當(dāng)前市面上的開發(fā)工具都可以來開發(fā),這些功能強(qiáng)大的開發(fā)工具可以給我來設(shè)計(jì)畢設(shè)帶來非常大的方便。
從Springboot智慧旅游平臺(tái)小程序的本身技術(shù)來說,對(duì)于我來開發(fā)一個(gè)Springboot智慧旅游平臺(tái)小程序這個(gè)畢設(shè)是不費(fèi)事的。Springboot智慧旅游平臺(tái)小程序的開發(fā)可以簡(jiǎn)單的分為前臺(tái)模塊、后臺(tái)模塊開發(fā)以及數(shù)據(jù)庫開發(fā)。其中的大部分技術(shù)難點(diǎn)在我上學(xué)時(shí)已經(jīng)使用過了,同時(shí)網(wǎng)絡(luò)上很多技術(shù)點(diǎn)可以讓我來借鑒。Web后臺(tái)管理使用JAVA、springboot等技術(shù),數(shù)據(jù)庫使用mysql,因此為我在開發(fā)Springboot智慧旅游平臺(tái)小程序這個(gè)畢設(shè)上省去了很多多余代碼,這給我的畢設(shè)項(xiàng)目編寫帶來了極大的便利。
從用戶體驗(yàn)來看,市面上很多被廣泛使用的例如淘寶等電商案例可以讓我來參考,因此我可以綜合淘寶上的頁面交互設(shè)計(jì)的優(yōu)點(diǎn),基于我的畢設(shè)項(xiàng)目特點(diǎn)來進(jìn)行改版,最后達(dá)到令用戶滿意的頁面交互體驗(yàn)。綜上所述,從技術(shù)層面來看開發(fā)Springboot智慧旅游平臺(tái)小程序是可行的。
2.1.2 經(jīng)濟(jì)可行性分析
從Springboot智慧旅游平臺(tái)小程序的開發(fā)成本來看,Springboot智慧旅游平臺(tái)小程序的設(shè)計(jì)和開發(fā)都是我自己完成的,沒有其他成本上的開銷。
從Springboot智慧旅游平臺(tái)小程序的維護(hù)成本來看,Springboot智慧旅游平臺(tái)小程序的開發(fā)遵循一套完整的代碼編寫規(guī)范,并且Springboot智慧旅游平臺(tái)小程序的結(jié)構(gòu)設(shè)計(jì)非常靈活,遵循高內(nèi)聚低耦合的原則,因此易于維護(hù)和迭代開發(fā)。
在Springboot智慧旅游平臺(tái)小程序上線之后,上線前期我會(huì)根據(jù)真實(shí)需求來調(diào)查,對(duì)使用我開發(fā)的Springboot智慧旅游平臺(tái)小程序來制定一套符合的使用費(fèi)。系統(tǒng)運(yùn)行穩(wěn)定后我會(huì)將推廣范圍到其他行業(yè)的中,他們可以自己來注冊(cè)使用我的Springboot智慧旅游平臺(tái)小程序,只需要繳納一點(diǎn)點(diǎn)的定金,我會(huì)給他們引入廣告投資和自營業(yè)務(wù)。
綜合以上的分析,Springboot智慧旅游平臺(tái)小程序所帶來的經(jīng)濟(jì)效益將會(huì)帶來極大的收益。并且隨著我的推廣,來使用我開發(fā)的Springboot智慧旅游平臺(tái)小程序的市場(chǎng)將越來越大,Springboot智慧旅游平臺(tái)小程序帶來的利潤也就越來越多。因此,從經(jīng)濟(jì)層面來看開發(fā)Springboot智慧旅游平臺(tái)小程序的是可行的。
2.1.3 操作可行性分析
本次開發(fā)的Springboot智慧旅游平臺(tái)小程序是比較簡(jiǎn)單的,只要會(huì)上網(wǎng)的用戶就可以使用,進(jìn)入系統(tǒng)以后,可以根據(jù)提示進(jìn)行對(duì)應(yīng)的操作,不管是系統(tǒng)的操作設(shè)計(jì)黑石系統(tǒng)的邏輯設(shè)計(jì)都相對(duì)簡(jiǎn)單,比如說用戶想要購買某一個(gè)蛋糕景區(qū)的時(shí)候,首先是要了解蛋糕景區(qū)的各種參數(shù),在了解的過程中,我們?cè)谶@個(gè)頁面中設(shè)置了醒目的購買菜單,方便用戶購買,所以說在用戶使用方面看來是比較容易操作的;再來看管理者管理部分,我們對(duì)系統(tǒng)價(jià)格的設(shè)置,各種參數(shù)的設(shè)置都是固定的,操作者只要進(jìn)入后就能夠?qū)崿F(xiàn)增刪改查,非常方便,綜合來說,系統(tǒng)在操作上是可行的。
2.2 系統(tǒng)流程分析
業(yè)務(wù)流程是用一些特定的符合和線條來進(jìn)行演示用戶在使用系統(tǒng)時(shí)的過程,在進(jìn)行系統(tǒng)分析的時(shí)候,業(yè)務(wù)流程可以幫助開發(fā)人員更好的理解業(yè)務(wù),發(fā)現(xiàn)錯(cuò)誤,完善系統(tǒng)。
2.2.1 ?數(shù)據(jù)增加流程
用戶成功登入系統(tǒng)后就能夠?qū)崿F(xiàn)增加數(shù)據(jù)的操作,增加數(shù)據(jù)的編號(hào)是特定的,系統(tǒng)生成,用戶不能隨意填寫,除了編號(hào)以外,其他增加信息用戶自己填寫,填寫后的信息經(jīng)過系統(tǒng)驗(yàn)證,驗(yàn)證合法通過就顯示增加數(shù)據(jù)成功了,相反的話,就沒有增加成功,圖2-1顯示的就是在增加數(shù)據(jù)時(shí)的流程。
?
圖2-1 ?數(shù)據(jù)增加流程圖
2.2.2 數(shù)據(jù)修改流程
數(shù)據(jù)修改時(shí)的流程和上面介紹的數(shù)據(jù)增加時(shí)的流程差不多,如圖2-2所示。
?
圖2-2 ?數(shù)據(jù)修改流程圖
2.2.3 數(shù)據(jù)刪除流程
如果系統(tǒng)里面存在一些沒有用的數(shù)據(jù)的話,相關(guān)的管理人員還可以對(duì)這些數(shù)據(jù)進(jìn)行刪除,圖2-3就是數(shù)據(jù)刪除時(shí)的流程圖。
?
圖2-3 ?數(shù)據(jù)刪除流程圖
2.3?系統(tǒng)功能分析
2.3.1 功能性分析
按照Springboot智慧旅游平臺(tái)小程序的角色,我劃分為了注冊(cè)用戶管理模塊和管理員管理模塊這兩大部分。
注冊(cè)用戶管理模塊:
(1)用戶注冊(cè)登錄:游客可以隨時(shí)進(jìn)入到系統(tǒng)中,對(duì)系統(tǒng)中的信息瀏覽,但是想要實(shí)現(xiàn)體檢中心等操作,就必須有這個(gè)系統(tǒng)的賬號(hào),如果沒有賬號(hào)的話,可以注冊(cè)以后進(jìn)行相關(guān)的操作,同時(shí)用戶還可以通過“我的”這以按鈕對(duì)個(gè)人信息以及操作的信息進(jìn)行管控。
(2)基本信息:用戶可以對(duì)個(gè)人資料、頭像、昵稱進(jìn)行修改。
(3)公告:用戶進(jìn)行公告信息的閱覽,查看管理者發(fā)布的行公告消息信息。
(4)美食信息:用戶可以查看美食信息,在查詢到自己想要了解的美食信息的時(shí)候,可以進(jìn)入查看詳細(xì)的介紹,在美食信息詳情這個(gè)界面,同時(shí)支持用戶對(duì)喜歡的美食信息進(jìn)行收藏、點(diǎn)贊、評(píng)論的功能。
(5)旅游資訊:當(dāng)用戶點(diǎn)擊“旅游資訊”這一菜單按鈕,會(huì)顯示管理員在后臺(tái)發(fā)布的所有的旅游資訊,可以查看詳情,進(jìn)行收藏、點(diǎn)贊、評(píng)論等;
(6)景區(qū)信息:用戶可以查看景區(qū)信息支持通過搜索關(guān)鍵詞的方式對(duì)景區(qū)信息進(jìn)行查詢,在查詢到自己想要了解的景區(qū)的時(shí)候,可以進(jìn)入查看詳細(xì)的介紹。
(7)收藏:點(diǎn)擊“我的”中“收藏”按鈕的時(shí)候就會(huì)顯示出自己收藏的各種信息了,支持對(duì)收藏信息的搜索查詢,如果你想不再收藏某一信息,點(diǎn)擊刪除就可以了。
管理員管理模塊:
(1)網(wǎng)站管理:管理員可以對(duì)Springboot智慧旅游平臺(tái)小程序中首頁顯示的系統(tǒng)中的一些公告、輪播圖發(fā)布到系統(tǒng)當(dāng)中,讓用戶及時(shí)的查看到系統(tǒng)信息,進(jìn)行合理安排。
(2)人員管理:管理員可以對(duì)Springboot智慧旅游平臺(tái)小程序中所有的注冊(cè)用戶進(jìn)行管控,包括了管理員和注冊(cè)用戶。
(3)內(nèi)容管理:當(dāng)點(diǎn)擊“內(nèi)容管理”這一菜單的時(shí)候,會(huì)出現(xiàn)旅游資訊、資訊分類這兩個(gè)子菜單,管理員能夠?qū)@兩個(gè)模塊進(jìn)行增刪改查操作;
(6)模塊管理:當(dāng)點(diǎn)擊“模塊管理”這一菜單的時(shí)候,會(huì)出現(xiàn)城市、景區(qū)分類、景區(qū)信息、美食信息、美食分類、游記、土特產(chǎn)、紅色故事、游記類型這九個(gè)子菜單,管理員能夠?qū)@九個(gè)模塊進(jìn)行增刪改查操作;
2.3.2 非功能性分析
Springboot智慧旅游平臺(tái)小程序的非功能性需求比如Springboot智慧旅游平臺(tái)小程序的安全性怎么樣,可靠性怎么樣,性能怎么樣,可拓展性怎么樣等。具體可以表示在如下3-1表格中:
表3-1Springboot智慧旅游平臺(tái)小程序非功能需求表
安全性 |
主要指Springboot智慧旅游平臺(tái)小程序數(shù)據(jù)庫的安裝,數(shù)據(jù)庫的使用和密碼的設(shè)定必須合乎規(guī)范。 |
可靠性 |
可靠性是指Springboot智慧旅游平臺(tái)小程序能夠安裝用戶的指示進(jìn)行操作,經(jīng)過測(cè)試,可靠性90%以上。 |
性能 |
性能是影響Springboot智慧旅游平臺(tái)小程序占據(jù)市場(chǎng)的必要條件,所以性能最好要佳才好。 |
可擴(kuò)展性 |
比如數(shù)據(jù)庫預(yù)留多個(gè)屬性,比如接口的使用等確保了系統(tǒng)的非功能性需求。 |
易用性 |
用戶只要跟著Springboot智慧旅游平臺(tái)小程序的頁面展示內(nèi)容進(jìn)行操作,就可以了。 |
可維護(hù)性 |
Springboot智慧旅游平臺(tái)小程序開發(fā)的可維護(hù)性是非常重要的,經(jīng)過測(cè)試,可維護(hù)性沒有問題 |
2.4?系統(tǒng)用例分析
通過2.3功能的分析,得出了本Springboot智慧旅游平臺(tái)小程序的用例圖:
注冊(cè)用戶角色用例如圖2-3所示。
?
圖2-3?Springboot智慧旅游平臺(tái)小程序注冊(cè)用戶角色用例圖
web后臺(tái)管理上的管理員是維護(hù)整個(gè)Springboot智慧旅游平臺(tái)小程序中所有數(shù)據(jù)信息的。管理員角色用例如圖2-4所示。
?
圖2-4?Springboot智慧旅游平臺(tái)小程序管理員角色用例圖
2.5本章小結(jié)
本章主要通過對(duì)Springboot智慧旅游平臺(tái)小程序的可行性分析、流程分析、功能需求分析、系統(tǒng)用例分析,確定整個(gè)Springboot智慧旅游平臺(tái)小程序要實(shí)現(xiàn)的功能。同時(shí)也為Springboot智慧旅游平臺(tái)小程序的代碼實(shí)現(xiàn)和測(cè)試提供了標(biāo)準(zhǔn)。
3 Springboot智慧旅游平臺(tái)小程序總體設(shè)計(jì)
本章主要討論的內(nèi)容包括Springboot智慧旅游平臺(tái)小程序的功能模塊設(shè)計(jì)、數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)。
3.1?系統(tǒng)功能模塊設(shè)計(jì)
3.1.1整體功能模塊設(shè)計(jì)
在上一章節(jié)中主要對(duì)系統(tǒng)的功能性需求和非功能性需求進(jìn)行分析,并且根據(jù)需求分析了本Springboot智慧旅游平臺(tái)小程序中的用例。那么接下來就要開始對(duì)本Springboot智慧旅游平臺(tái)小程序的架構(gòu)、主要功能和數(shù)據(jù)庫開始進(jìn)行設(shè)計(jì)。Springboot智慧旅游平臺(tái)小程序根據(jù)前面章節(jié)的需求分析得出,其總體設(shè)計(jì)模塊圖如圖3-1所示。
?
圖3-1?Springboot智慧旅游平臺(tái)小程序功能模塊圖
3.1.2用戶模塊設(shè)計(jì)
后臺(tái)管理者能夠?qū)崿F(xiàn)對(duì)前臺(tái)注冊(cè)的用戶增刪改查操作,用戶模塊結(jié)構(gòu)圖如下圖:
?
圖3-2用戶用戶模塊結(jié)構(gòu)圖
3.1.3?評(píng)論管理模塊設(shè)計(jì)
Springboot智慧旅游平臺(tái)小程序是一個(gè)交流性質(zhì)的公開平臺(tái),用戶用戶可以在平臺(tái)上交流,增加用戶之間的互動(dòng)性。但是同時(shí)也為了更好的規(guī)范評(píng)論的內(nèi)容,給予管理員刪除不合適的言論的功能,所以需要專門設(shè)計(jì)一個(gè)評(píng)論管理模塊,具體的結(jié)構(gòu)圖如下:
?
圖3-3評(píng)論模塊結(jié)構(gòu)圖
3.1.4景區(qū)管理模塊設(shè)計(jì)
Springboot智慧旅游平臺(tái)小程序是中需要存儲(chǔ)不少景區(qū)信息,其模塊功能結(jié)構(gòu),具體的結(jié)構(gòu)圖如下:
?
圖3-4景區(qū)模塊結(jié)構(gòu)圖
3.2 數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)一般包括需求分析、概念模型設(shè)計(jì)、數(shù)據(jù)庫表建立三大過程,其中需求分析前面章節(jié)已經(jīng)闡述,概念模型設(shè)計(jì)有概念模型和邏輯結(jié)構(gòu)設(shè)計(jì)兩部分。
3.2.1 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)
下面是整個(gè)Springboot智慧旅游平臺(tái)小程序中主要的數(shù)據(jù)庫表總E-R實(shí)體關(guān)系圖。
圖3-6?Springboot智慧旅游平臺(tái)小程序總E-R關(guān)系圖
?
3.2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)
通過上一小節(jié)中Springboot智慧旅游平臺(tái)小程序中總E-R關(guān)系圖上得出一共需要?jiǎng)?chuàng)建很多個(gè)數(shù)據(jù)表。在此我主要羅列幾個(gè)主要的數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)。
表city (城市)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
city_id |
int |
10 |
0 |
N |
Y |
城市ID |
|
2 |
city |
varchar |
64 |
0 |
Y |
N |
城市 |
|
3 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表classification_of_scenic_spots (景區(qū)分類)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
classification_of_scenic_spots_id |
int |
10 |
0 |
N |
Y |
景區(qū)分類ID |
|
2 |
classification_of_scenic_spots |
varchar |
64 |
0 |
Y |
N |
景區(qū)分類 |
|
3 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表collect (收藏)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
collect_id |
int |
10 |
0 |
N |
Y |
收藏ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
收藏人ID: |
3 |
source_table |
varchar |
255 |
0 |
Y |
N |
來源表: |
|
4 |
source_field |
varchar |
255 |
0 |
Y |
N |
來源字段: |
|
5 |
source_id |
int |
10 |
0 |
N |
N |
0 |
來源ID: |
6 |
title |
varchar |
255 |
0 |
Y |
N |
標(biāo)題: |
|
7 |
img |
varchar |
255 |
0 |
Y |
N |
封面: |
|
8 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
表comment (評(píng)論)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
comment_id |
int |
10 |
0 |
N |
Y |
評(píng)論ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
評(píng)論人ID: |
3 |
reply_to_id |
int |
10 |
0 |
N |
N |
0 |
回復(fù)評(píng)論ID:空為0 |
4 |
content |
longtext |
2147483647 |
0 |
Y |
N |
內(nèi)容: |
|
5 |
nickname |
varchar |
255 |
0 |
Y |
N |
昵稱: |
|
6 |
avatar |
varchar |
255 |
0 |
Y |
N |
頭像地址:[0,255] |
|
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
9 |
source_table |
varchar |
255 |
0 |
Y |
N |
來源表: |
|
10 |
source_field |
varchar |
255 |
0 |
Y |
N |
來源字段: |
|
11 |
source_id |
int |
10 |
0 |
N |
N |
0 |
來源ID: |
表food_classification (美食分類)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
food_classification_id |
int |
10 |
0 |
N |
Y |
美食分類ID |
|
2 |
food_category |
varchar |
64 |
0 |
Y |
N |
美食類別 |
|
3 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表food_information (美食信息)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
food_information_id |
int |
10 |
0 |
N |
Y |
美食信息ID |
|
2 |
food_name |
varchar |
64 |
0 |
Y |
N |
美食名稱 |
|
3 |
food_category |
varchar |
64 |
0 |
Y |
N |
美食類別 |
|
4 |
region |
varchar |
64 |
0 |
Y |
N |
地區(qū) |
|
5 |
photo |
varchar |
255 |
0 |
Y |
N |
照片 |
|
6 |
recommended_store |
varchar |
64 |
0 |
Y |
N |
推薦店鋪 |
|
7 |
shop_website |
varchar |
255 |
0 |
Y |
N |
店鋪網(wǎng)址 |
|
8 |
price |
varchar |
64 |
0 |
Y |
N |
價(jià)格 |
|
9 |
food_materials |
text |
65535 |
0 |
Y |
N |
食材 |
|
10 |
details |
longtext |
2147483647 |
0 |
Y |
N |
詳情 |
|
11 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊數(shù) |
12 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊數(shù) |
13 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
14 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
15 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表hits (用戶點(diǎn)擊)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
hits_id |
int |
10 |
0 |
N |
Y |
點(diǎn)贊ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊人: |
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
來源表: |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
來源字段: |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
來源ID: |
表local_specialty (土特產(chǎn))
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
local_specialty_id |
int |
10 |
0 |
N |
Y |
土特產(chǎn)ID |
|
2 |
name_of_specialty |
varchar |
64 |
0 |
Y |
N |
特產(chǎn)名稱 |
|
3 |
specifications |
varchar |
64 |
0 |
Y |
N |
規(guī)格 |
|
4 |
flavor |
varchar |
64 |
0 |
Y |
N |
口味 |
|
5 |
date_of_manufacture |
date |
10 |
0 |
Y |
N |
生產(chǎn)日期 |
|
6 |
quality_guarantee_period |
varchar |
64 |
0 |
Y |
N |
保質(zhì)期 |
|
7 |
place_of_production |
varchar |
64 |
0 |
Y |
N |
生產(chǎn)地 |
|
8 |
storage_method |
varchar |
64 |
0 |
Y |
N |
儲(chǔ)存方式 |
|
9 |
recommended_stores |
varchar |
64 |
0 |
Y |
N |
推薦商店 |
|
10 |
related_online_stores |
varchar |
255 |
0 |
Y |
N |
相關(guān)網(wǎng)店 |
|
11 |
list_of_ingredients |
text |
65535 |
0 |
Y |
N |
配料表 |
|
12 |
product_introduction |
longtext |
2147483647 |
0 |
Y |
N |
產(chǎn)品介紹 |
|
13 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊數(shù) |
14 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊數(shù) |
15 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
16 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
17 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表notice (公告)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
notice_id |
mediumint |
8 |
0 |
N |
Y |
公告id: |
|
2 |
title |
varchar |
125 |
0 |
N |
N |
標(biāo)題: |
|
3 |
content |
longtext |
2147483647 |
0 |
Y |
N |
正文: |
|
4 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
表praise (點(diǎn)贊)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
praise_id |
int |
10 |
0 |
N |
Y |
點(diǎn)贊ID: |
|
2 |
user_id |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊人: |
3 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
4 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
5 |
source_table |
varchar |
255 |
0 |
Y |
N |
來源表: |
|
6 |
source_field |
varchar |
255 |
0 |
Y |
N |
來源字段: |
|
7 |
source_id |
int |
10 |
0 |
N |
N |
0 |
來源ID: |
8 |
status |
bit |
1 |
0 |
N |
N |
1 |
點(diǎn)贊狀態(tài):1為點(diǎn)贊,0已取消 |
表red_story (紅色故事)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
red_story_id |
int |
10 |
0 |
N |
Y |
紅色故事ID |
|
2 |
story_name |
varchar |
64 |
0 |
Y |
N |
故事名稱 |
|
3 |
story_characters |
varchar |
64 |
0 |
Y |
N |
故事人物 |
|
4 |
time_of_occurrence |
varchar |
64 |
0 |
Y |
N |
發(fā)生時(shí)間 |
|
5 |
place_of_occurrence |
varchar |
64 |
0 |
Y |
N |
發(fā)生地點(diǎn) |
|
6 |
story_introduction |
text |
65535 |
0 |
Y |
N |
故事簡(jiǎn)介 |
|
7 |
medical_knowledge |
text |
65535 |
0 |
Y |
N |
醫(yī)學(xué)常識(shí) |
|
8 |
story_content |
longtext |
2147483647 |
0 |
Y |
N |
故事內(nèi)容 |
|
9 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊數(shù) |
10 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊數(shù) |
11 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
12 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
13 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表registered_users (注冊(cè)用戶)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
registered_users_id |
int |
10 |
0 |
N |
Y |
注冊(cè)用戶ID |
|
2 |
user_name |
varchar |
64 |
0 |
Y |
N |
用戶名 |
|
3 |
gender |
varchar |
64 |
0 |
Y |
N |
性別 |
|
4 |
motto |
varchar |
64 |
0 |
Y |
N |
座右銘 |
|
5 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通過 |
審核狀態(tài) |
6 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
7 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用戶ID |
8 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
9 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表scenic_area_information (景區(qū)信息)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
scenic_area_information_id |
int |
10 |
0 |
N |
Y |
景區(qū)信息ID |
|
2 |
name_of_scenic_spot |
varchar |
64 |
0 |
Y |
N |
景區(qū)名稱 |
|
3 |
classification_of_scenic_spots |
varchar |
64 |
0 |
Y |
N |
景區(qū)分類 |
|
4 |
city |
varchar |
64 |
0 |
Y |
N |
城市 |
|
5 |
ticket_price |
int |
10 |
0 |
Y |
N |
0 |
票價(jià) |
6 |
photo |
varchar |
255 |
0 |
Y |
N |
照片 |
|
7 |
opening_hours |
varchar |
64 |
0 |
Y |
N |
開放時(shí)間 |
|
8 |
tourist_routes |
varchar |
255 |
0 |
Y |
N |
旅游路線 |
|
9 |
official_telephone |
varchar |
64 |
0 |
Y |
N |
官方電話 |
|
10 |
local_weather |
varchar |
64 |
0 |
Y |
N |
當(dāng)?shù)靥鞖?/p> |
|
11 |
address_of_the_scenic_spot |
varchar |
64 |
0 |
Y |
N |
景區(qū)地址 |
|
12 |
tour_instructions |
text |
65535 |
0 |
Y |
N |
游覽須知 |
|
13 |
stories_of_scenic_spots |
text |
65535 |
0 |
Y |
N |
景點(diǎn)事跡 |
|
14 |
details |
longtext |
2147483647 |
0 |
Y |
N |
詳情 |
|
15 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊數(shù) |
16 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊數(shù) |
17 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
18 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
19 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表slides (輪播圖)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
slides_id |
int |
10 |
0 |
N |
Y |
輪播圖ID: |
|
2 |
title |
varchar |
64 |
0 |
Y |
N |
標(biāo)題: |
|
3 |
content |
varchar |
255 |
0 |
Y |
N |
內(nèi)容: |
|
4 |
url |
varchar |
255 |
0 |
Y |
N |
鏈接: |
|
5 |
img |
varchar |
255 |
0 |
Y |
N |
輪播圖: |
|
6 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊量: |
7 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間: |
8 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間: |
表travels (游記)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
travels_id |
int |
10 |
0 |
N |
Y |
游記ID |
|
2 |
post_name |
varchar |
64 |
0 |
Y |
N |
帖子名稱 |
|
3 |
type_of_travel_notes |
varchar |
64 |
0 |
Y |
N |
游記類型 |
|
4 |
picture |
varchar |
255 |
0 |
Y |
N |
圖片 |
|
5 |
user |
int |
10 |
0 |
Y |
N |
0 |
用戶 |
6 |
travel_time |
varchar |
64 |
0 |
Y |
N |
出行時(shí)間 |
|
7 |
days |
varchar |
64 |
0 |
Y |
N |
天數(shù) |
|
8 |
time_of_publication |
date |
10 |
0 |
Y |
N |
發(fā)表時(shí)間 |
|
9 |
tourist_attraction_strategy |
text |
65535 |
0 |
Y |
N |
景點(diǎn)攻略 |
|
10 |
transportation_strategy |
text |
65535 |
0 |
Y |
N |
交通攻略 |
|
11 |
post_content |
text |
65535 |
0 |
Y |
N |
帖子內(nèi)容 |
|
12 |
hits |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)擊數(shù) |
13 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
點(diǎn)贊數(shù) |
14 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
15 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
16 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
表type_of_travel_notes (游記類型)
編號(hào) |
名稱 |
數(shù)據(jù)類型 |
長(zhǎng)度 |
小數(shù)位 |
允許空值 |
主鍵 |
默認(rèn)值 |
說明 |
1 |
type_of_travel_notes_id |
int |
10 |
0 |
N |
Y |
游記類型ID |
|
2 |
type_of_travel_notes |
varchar |
64 |
0 |
Y |
N |
游記類型 |
|
3 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推薦 |
4 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
創(chuàng)建時(shí)間 |
5 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新時(shí)間 |
3.4本章小結(jié)
整個(gè)Springboot智慧旅游平臺(tái)小程序的需求分析主要對(duì)系統(tǒng)總體架構(gòu)以及功能模塊的設(shè)計(jì),通過建立E-R模型和數(shù)據(jù)庫邏輯系統(tǒng)設(shè)計(jì)完成了數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)。
4?Springboot智慧旅游平臺(tái)小程序詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)
Springboot智慧旅游平臺(tái)小程序的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)主要是根據(jù)前面的Springboot智慧旅游平臺(tái)小程序的需求分析和Springboot智慧旅游平臺(tái)小程序的總體設(shè)計(jì)來設(shè)計(jì)頁面并實(shí)現(xiàn)業(yè)務(wù)邏輯。主要從Springboot智慧旅游平臺(tái)小程序界面實(shí)現(xiàn)、業(yè)務(wù)邏輯實(shí)現(xiàn)這兩部分進(jìn)行介紹。
4.1用戶功能模塊
4.1.1 前臺(tái)首頁界面
當(dāng)進(jìn)入Springboot智慧旅游平臺(tái)小程序的時(shí)候,首先映入眼簾的是系統(tǒng)的導(dǎo)航欄,下面是輪播圖以及系統(tǒng)內(nèi)容,其主界面展示如下圖4-1所示。
?
圖4-1?前臺(tái)首頁界面圖
4.1.2 用戶注冊(cè)界面
普通的用戶只支持對(duì)首頁部分內(nèi)容的瀏覽,想要購買或者查看搜索景區(qū)就必須登錄到系統(tǒng),如果你沒有本Springboot智慧旅游平臺(tái)小程序的賬號(hào)的話,添加“注冊(cè)”根據(jù)提示輸入好用戶信息后,點(diǎn)擊“注冊(cè)”按鈕后,系統(tǒng)會(huì)對(duì)輸入的信息進(jìn)行驗(yàn)證,驗(yàn)證輸入的賬戶名和數(shù)據(jù)庫表中已經(jīng)注冊(cè)的賬戶名是否重復(fù),只有都驗(yàn)證沒問題后即可用戶注冊(cè)成功。其用用戶注冊(cè)界面展示如下圖4-2所示。
?
圖4-2?前臺(tái)用戶注冊(cè)界面圖
用戶注冊(cè)關(guān)鍵代碼如下。
/**
?????* 注冊(cè)
?????* @param user
?????* @return
?????*/
????@PostMapping("register")
????public Map<String,?Object> signUp(@RequestBody User user) {
????????// 查詢用戶
????????Map<String,?String> query = new HashMap<>();
????????query.put("username",user.getUsername());
????????List list = service.select(query,?new HashMap<>()).getResultList();
????????if (list.size()>0){
????????????return error(30000,?"用戶已存在");
????????}
????????user.setUserId(null);
????????user.setPassword(service.encryption(user.getPassword()));
????????service.save(user);
????????return success(1);
}
/**
?????* 用戶ID:[0,8388607]用戶獲取其他與用戶相關(guān)的數(shù)據(jù)
?????*/
????@Id
????@GeneratedValue(strategy = GenerationType.IDENTITY)
????@Column(name = "user_id")
????private Integer userId;
????/**
?????* 賬戶狀態(tài):[0,10](1可用|2異常|3已凍結(jié)|4已注銷)
?????*/
????@Basic
????@Column(name = "state")
????private Integer state;
????/**
?????* 所在用戶組:[0,32767]決定用戶身份和權(quán)限
?????*/
????@Basic
????@Column(name = "user_group")
????private String userGroup;
????/**
?????* 上次登錄時(shí)間:
?????*/
????@Basic
????@Column(name = "login_time")
????private Timestamp loginTime;
????/**
?????* 手機(jī)號(hào)碼:[0,11]用戶的手機(jī)號(hào)碼,用于找回密碼時(shí)或登錄時(shí)
?????*/
????@Basic
????@Column(name = "phone")
????private String phone;
????/**
?????* 手機(jī)認(rèn)證:[0,1](0未認(rèn)證|1審核中|2已認(rèn)證)
?????*/
????@Basic
????@Column(name = "phone_state")
????private Integer phoneState;
????/**
?????* 用戶名:[0,16]用戶登錄時(shí)所用的賬戶名稱
?????*/
????@Basic
????@Column(name = "username")
????private String username;
????/**
?????* 昵稱:[0,16]
?????*/
????@Basic
????@Column(name = "nickname")
????private String nickname;
????/**
?????* 密碼:[0,32]用戶登錄所需的密碼,由6-16位數(shù)字或英文組成
?????*/
????@Basic
????@Column(name = "password")
????private String password;
????/**
?????* 郵箱:[0,64]用戶的郵箱,用于找回密碼時(shí)或登錄時(shí)
?????*/
????@Basic
????@Column(name = "email")
????private String email;
????/**
?????* 郵箱認(rèn)證:[0,1](0未認(rèn)證|1審核中|2已認(rèn)證)
?????*/
????@Basic
????@Column(name = "email_state")
????private Integer emailState;
????/**
?????* 頭像地址:[0,255]
?????*/
????@Basic
????@Column(name = "avatar")
????private String avatar;
????/**
?????* 創(chuàng)建時(shí)間:
?????*/
????@Basic
????@Column(name = "create_time")
????@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
????private Timestamp createTime;
????@Basic
????@Transient
????private String code;
}
4.1.3 用戶登錄界面
Springboot智慧旅游平臺(tái)小程序中的前臺(tái)上注冊(cè)后的用戶是可以通過自己的賬戶名和密碼進(jìn)行登錄的,當(dāng)用戶輸入完整的自己的賬戶名和密碼信息并點(diǎn)擊“登錄”按鈕后,將會(huì)首先驗(yàn)證輸入的有沒有空數(shù)據(jù),再次驗(yàn)證輸入的賬戶名+密碼和數(shù)據(jù)庫中當(dāng)前保存的用戶信息是否一致,只有在一致后將會(huì)登錄成功并自動(dòng)跳轉(zhuǎn)到Springboot智慧旅游平臺(tái)小程序的首頁中;否則將會(huì)提示相應(yīng)錯(cuò)誤信息,用戶登錄界面如下圖4-3所示。
?
圖4-3用戶登錄界面圖
用戶登錄的關(guān)鍵代碼如下。
/**
?????* 登錄
?????* @param data
?????* @param httpServletRequest
?????* @return
?????*/
????@PostMapping("login")
????public Map<String,?Object> login(@RequestBody Map<String,?String> data,?HttpServletRequest httpServletRequest) {
????????log.info("[執(zhí)行登錄接口]");
????????String username = data.get("username");
????????String email = data.get("email");
????????String phone = data.get("phone");
????????String password = data.get("password");
????????List resultList = null;
????????Map<String,?String> map = new HashMap<>();
????????if(username != null && "".equals(username) == false){
????????????map.put("username",?username);
????????????resultList = service.select(map,?new HashMap<>()).getResultList();
????????}
????????else if(email != null && "".equals(email) == false){
????????????map.put("email",?email);
????????????resultList = service.select(map,?new HashMap<>()).getResultList();
????????}
????????else if(phone != null && "".equals(phone) == false){
????????????map.put("phone",?phone);
????????????resultList = service.select(map,?new HashMap<>()).getResultList();
????????}else{
????????????return error(30000,?"賬號(hào)或密碼不能為空");
????????}
????????if (resultList == null || password == null) {
????????????return error(30000,?"賬號(hào)或密碼不能為空");
????????}
????????//判斷是否有這個(gè)用戶
????????if (resultList.size()<=0){
????????????return error(30000,"用戶不存在");
????????}
????????User byUsername = (User) resultList.get(0);
4.1.4修改密碼界面
用戶使用該智慧旅游平臺(tái)小程序注冊(cè)完成后,用戶對(duì)登錄密碼有修改需求時(shí),系統(tǒng)也可以提供用戶修改密碼權(quán)限。系統(tǒng)中所有的操作者能夠變更自己的密碼信息,執(zhí)行該功能首先必須要登入系統(tǒng),然后選擇密碼變更選項(xiàng)以后在給定的文本框中填寫初始密碼和新密碼來完成修改密碼的操作。在填寫的時(shí)候,假如兩次密碼填寫存在差異,那么此次密碼變更操作失敗,下面的圖片展示的就是該板塊對(duì)應(yīng)的工作面。修改密碼界面如下圖4-4所示。
?
圖4-4修改密碼界面圖
4.1.5搜索景區(qū)信息界面
在搜索的輸入框中輸入自己想要搜索的景區(qū)信息并點(diǎn)擊后面的“搜索”按鈕后將會(huì)根據(jù)模糊匹配的方式,去數(shù)據(jù)庫中搜索最匹配的景區(qū)信息并顯示出來。搜索景區(qū)信息界面如下圖4-5所示。
?
圖4-5景區(qū)信息界面圖
景區(qū)信息的關(guān)鍵代碼如下。
?@PostMapping("/add")
????@Transactional
????public Map<String,?Object> add(HttpServletRequest request) throws IOException {
????????service.insert(service.readBody(request.getReader()));
????????return success(1);
????}
????@Transactional
????public Map<String,?Object> addMap(Map<String,Object> map){
????????service.insert(map);
????????return success(1);
}
4.1.6?景區(qū)詳情界面
點(diǎn)擊任意一個(gè)景區(qū)信息后將可以進(jìn)入到該景區(qū)的詳情界面中,它包括了景區(qū)名稱+景區(qū)分類+城市+票價(jià)+開放時(shí)間+旅游路線+官方電話+當(dāng)天天氣+景區(qū)地址等一系列的詳細(xì)介紹,還可以定位景區(qū)的信息,進(jìn)行點(diǎn)贊、收藏、評(píng)論等,景區(qū)詳情界面如下圖4-6所示。
???????????????????????????
?
圖4-6?景區(qū)詳情界面圖
4.1.7旅游資訊界面
當(dāng)訪客點(diǎn)擊智慧旅游平臺(tái)小程序中導(dǎo)航欄上的“旅游資訊”后將會(huì)進(jìn)入到該“旅游資訊”列表的界面,然后選擇想要看的旅游資訊信息,點(diǎn)擊進(jìn)入到詳細(xì)界面,在詳細(xì)界面可以收藏+贊+評(píng)論等操作,旅游資訊界面如下圖4-8所示。
????????????????????????
?
圖4-7?旅游資訊界面圖
4.2管理員功能模塊
4.2.1 網(wǎng)站管理界面
智慧旅游平臺(tái)小程序中的管理人員在“網(wǎng)站管理”這一菜單中是可以對(duì)前臺(tái)顯示的輪播圖以及公告進(jìn)行管控。界面如下圖4-9所示。
?
圖4-9?網(wǎng)站管理界面圖
網(wǎng)站管理的關(guān)鍵代碼如下。
?@RequestMapping(value = {"/count_group",?"/count"})
????public Map<String,?Object> count(HttpServletRequest request) {
????????Query count = service.count(service.readQuery(request),?service.readConfig(request));
????????return success(count.getResultList());
}
4.2.2?內(nèi)容管理界面
智慧旅游平臺(tái)小程序中的管理人員在“內(nèi)容管理”這一菜單中是可以對(duì)智慧旅游平臺(tái)小程序內(nèi)的旅游資訊以及資訊分類信息進(jìn)行維護(hù)和管理的,界面如下圖4-10所示。
?
圖4-10內(nèi)容管理界面圖
內(nèi)容管理關(guān)鍵代碼:
??@RequestMapping(value = {"/avg_group",?"/avg"})
public Map<String,?Object> avg(HttpServletRequest request) {
????????Query count = service.avg(service.readQuery(request),?service.readConfig(request));
????????return success(count.getResultList());
}
4.2.3 人員管理界面
智慧旅游平臺(tái)小程序中的管理員在“人員管理”這一菜單是中可以對(duì)注冊(cè)的用戶以及管理員人員進(jìn)行管控。界面如下圖4-11所示。
?
圖4-11人員管理界面圖
人員管理的關(guān)鍵代碼如下。
@RequestMapping("/get_obj")
????public Map<String,?Object> obj(HttpServletRequest request) {
????????Query select = service.select(service.readQuery(request),?service.readConfig(request));
????????List resultList = select.getResultList();
????????if (resultList.size() > 0) {
????????????JSONObject jsonObject = new JSONObject();
????????????jsonObject.put("obj",resultList.get(0));
????????????return success(jsonObject);
????????} else {
????????????return success(null);
????????}
}
?public Query select(Map<String,String> query,Map<String,String> config){
????????StringBuffer sql = new StringBuffer("select ");
????????sql.append(config.get(FindConfig.FIELD) == null || "".equals(config.get(FindConfig.FIELD)) ? "*" : config.get(FindConfig.FIELD)).append(" ");
????????sql.append("from ").append("`").append(table).append("`").append(toWhereSql(query,?"0".equals(config.get(FindConfig.LIKE))));
????????if (config.get(FindConfig.GROUP_BY) != null && !"".equals(config.get(FindConfig.GROUP_BY))){
????????????sql.append("group by ").append(config.get(FindConfig.GROUP_BY)).append(" ");
????????}
????????if (config.get(FindConfig.ORDER_BY) != null && !"".equals(config.get(FindConfig.ORDER_BY))){
????????????sql.append("order by ").append(config.get(FindConfig.ORDER_BY)).append(" ");
????????}
????????if (config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE))){
????????????int page = config.get(FindConfig.PAGE) != null && !"".equals(config.get(FindConfig.PAGE)) ? Integer.parseInt(config.get(FindConfig.PAGE)) : 1;
????????????int limit = config.get(FindConfig.SIZE) != null && !"".equals(config.get(FindConfig.SIZE)) ? Integer.parseInt(config.get(FindConfig.SIZE)) : 10;
????????????sql.append(" limit ").append( (page-1)*limit ).append(" ,?").append(limit);
????????}
????????log.info("[{}] - 查詢操作,sql: {}",table,sql);
????????return runEntitySql(sql.toString());
????}
4.2.4模塊管理界面
智慧旅游平臺(tái)小程序中的管理人員在“模塊管理”這一菜單下是可以對(duì)智慧旅游平臺(tái)小程序的城市、景區(qū)分類、景區(qū)信息、美食分類、美食信息、游記、土特產(chǎn)、紅色故事、游記類型進(jìn)行管控的,其管理界面如下圖4-12所示。
?
圖4-12模塊管理界面圖
模塊管理的關(guān)鍵代碼:
?@RequestMapping("/get_list")
????public Map<String,?Object> getList(HttpServletRequest request) {
????????Map<String,?Object> map = service.selectToPage(service.readQuery(request),?service.readConfig(request));
????????return success(map);
}
5系統(tǒng)測(cè)試
5.1系統(tǒng)測(cè)試的目的
系統(tǒng)的前臺(tái)、后臺(tái)、數(shù)據(jù)庫完成以后,這個(gè)系統(tǒng)才算是完成了一半,我們?cè)谶@之后要對(duì)系統(tǒng)進(jìn)行最后的一個(gè)階段,那就是測(cè)試了,測(cè)試對(duì)一個(gè)系統(tǒng)來說是非常重要的,有的時(shí)候開發(fā)完一個(gè)系統(tǒng),如果測(cè)試不合格的話,這個(gè)系統(tǒng)是沒有辦法進(jìn)行投入使用的,所有我們要用測(cè)試對(duì)系統(tǒng)的功能進(jìn)行檢驗(yàn),把不完善的功能盡量完善,把出現(xiàn)的bug解決掉,然后給用戶呈現(xiàn)出一個(gè)完美的系統(tǒng)。通過對(duì)系統(tǒng)最后一步的測(cè)試,使得開發(fā)人員對(duì)自己的系統(tǒng)更加有信心,更加積極的為后期的系統(tǒng)版本的更新提供支持。
5.2?系統(tǒng)測(cè)試用例
系統(tǒng)測(cè)試包括:用戶登錄功能測(cè)試、景區(qū)展示功能測(cè)試、景區(qū)添加、景區(qū)搜索、密碼修改功能測(cè)試,如表5-1、5-2、5-3、5-4、5-5所示:
用戶登錄功能測(cè)試:
表5-1?用戶登錄功能測(cè)試表
用例名稱 |
用戶登錄系統(tǒng) |
目的 |
測(cè)試用戶通過正確的用戶名和密碼可否登錄功能 |
前提 |
未登錄的情況下 |
測(cè)試流程 |
1) 進(jìn)入登錄頁面 2) 輸入正確的用戶名和密碼 |
預(yù)期結(jié)果 |
用戶名和密碼正確的時(shí)候,跳轉(zhuǎn)到登錄成功界面,反之則顯示錯(cuò)誤信息,提示重新輸入 |
實(shí)際結(jié)果 |
實(shí)際結(jié)果與預(yù)期結(jié)果一致 |
景區(qū)查看功能測(cè)試:
表5-2?景區(qū)查看功能測(cè)試表
用例名稱 |
景區(qū)查看 |
目的 |
測(cè)試景區(qū)查看功能 |
前提 |
用戶登錄 |
測(cè)試流程 |
點(diǎn)擊景區(qū)列表 |
預(yù)期結(jié)果 |
可以查看到所有景區(qū)信息 |
實(shí)際結(jié)果 |
實(shí)際結(jié)果與預(yù)期結(jié)果一致 |
管理員添加校園論壇界面測(cè)試:
表5-3?管理員添加游記界面測(cè)試表
用例名稱 |
景區(qū)發(fā)布測(cè)試用例 |
目的 |
測(cè)試景區(qū)發(fā)布功能 |
前提 |
用戶正常登錄情況下 |
測(cè)試流程 |
1)點(diǎn)擊景區(qū)信息管理就,然后點(diǎn)擊添加后并填寫信息。 2)點(diǎn)擊進(jìn)行提交。 |
預(yù)期結(jié)果 |
提交以后,頁面首頁會(huì)顯示新的景區(qū)信息? |
實(shí)際結(jié)果 |
實(shí)際結(jié)果與預(yù)期結(jié)果一致 |
景區(qū)搜索功能測(cè)試:
表5-4景區(qū)搜索功能測(cè)試表
用例名稱 |
景區(qū)搜索測(cè)試 |
目的 |
測(cè)試景區(qū)搜索功能 |
前提 |
無 |
測(cè)試流程 |
1)在搜索框填入搜索關(guān)鍵字。 2)點(diǎn)擊搜索按鈕。 |
預(yù)期結(jié)果 |
頁面顯示包含有搜索關(guān)鍵字的景區(qū) |
實(shí)際結(jié)果 |
實(shí)際結(jié)果與預(yù)期結(jié)果一致 |
密碼修改功能測(cè)試:
表5-5 密碼修改功能測(cè)試表
用例名稱 |
密碼修改測(cè)試用例 |
目的 |
測(cè)試管理員密碼修改功能 |
前提 |
管理員用戶正常登錄情況下 |
測(cè)試流程 |
1)管理員密碼修改并完成填寫。 2)點(diǎn)擊進(jìn)行提交。 |
預(yù)期結(jié)果 |
使用新的密碼可以登錄 |
實(shí)際結(jié)果 |
實(shí)際結(jié)果與預(yù)期結(jié)果一致 |
5.3?系統(tǒng)測(cè)試結(jié)果
通過編寫Springboot智慧旅游平臺(tái)小程序的測(cè)試用例,已經(jīng)檢測(cè)完畢用戶登錄模塊、景區(qū)查看模塊、景區(qū)添加模塊、景區(qū)購買模塊、密碼修改功能測(cè)試,通過這5大模塊為Springboot智慧旅游平臺(tái)小程序的后期推廣運(yùn)營提供了強(qiáng)力的技術(shù)支撐。
結(jié)論
至此論文結(jié)束,感謝您的閱讀。在此我要感謝我的導(dǎo)師,雖然我在實(shí)習(xí)期間很忙,論文撰寫總是停停改改,但是導(dǎo)師依然十分負(fù)責(zé),時(shí)不時(shí)的詢問我的任務(wù)進(jìn)展情況,跟進(jìn)我的論文進(jìn)度。雖然我在實(shí)習(xí)期間很忙,以至于很晚才開始進(jìn)行論文撰寫和編寫程序的工作,但是在指導(dǎo)老師的幫助下,我逐步完成了自己的論文和程序,從導(dǎo)師身上也學(xué)習(xí)到很多知識(shí),和經(jīng)驗(yàn),這些知識(shí)和經(jīng)驗(yàn)令我受益匪淺。也從導(dǎo)師身上看到了自己的不足,不論是在即使層面上還是在對(duì)待工作的態(tài)度上,倒數(shù)如同明鏡一般照出了我的缺點(diǎn)我的不足。此外,我還要感謝在我實(shí)習(xí)期間在論文和程序上幫助過我的同學(xué)和社會(huì)人士,此前我對(duì)于springboot開發(fā)方面的一些知識(shí)還不了解,是他們?cè)谖揖帉懗绦蜻^程中給了我很多的啟發(fā)和感想,也幫助了我對(duì)于程序的調(diào)試和檢測(cè)。沒有他們我是不能順利完成本次畢業(yè)設(shè)計(jì)的。至此,我的畢業(yè)設(shè)計(jì)就花上了一個(gè)圓滿的句號(hào)了。
參考文獻(xiàn)
[1]閔慧,李鵬.“我的排課表”微信小程序的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)時(shí)代,2023(02):111-114.DOI:10.16644/j.cnki.cn33-1094/tp.2023.02.026.
[2]王曉彤.基于微信小程序構(gòu)建心電診斷學(xué)線上教學(xué)平臺(tái)的探索[J].牡丹江醫(yī)學(xué)院學(xué)報(bào),2023,44(01):170-172+175.DOI:10.13799/j.cnki.mdjyxyxb.2023.01.024.
[3]李洋,劉婷.基于MySQL的家電回收管理系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)[J].科技與創(chuàng)新,2023(03):141-143+146.DOI:10.15913/j.cnki.kjycx.2023.03.043.
[4]涂小東,陳俊峰,陳浩. 一種基于VR/AR虛擬沉浸式技術(shù)的智慧旅游平臺(tái)系統(tǒng)及方法[P]. 四川?。篊N115629666A,2023-01-20.
[5]. Telefónica Tech and unBlock launch first Web3 Smart Tourism platform[J]. M2 Presswire,2023.
[6], 旅游管理 智慧旅游平臺(tái)建設(shè). 姜榮芳 主編,南通年鑒,方志出版社,2021,211,年鑒.DOI:10.41016/y.cnki.yntnj.2022.000886.
[7]沈志元,張文健.基于Java技術(shù)的醫(yī)院管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2022,18(32):38-40+54.DOI:10.14004/j.cnki.ckt.2022.1994.
[8]張麗景,張文川.基于對(duì)比分析法的高職“MySQL數(shù)據(jù)庫”課程設(shè)計(jì)——以蘭州石化職業(yè)技術(shù)大學(xué)為例[J].現(xiàn)代信息科技,2022,6(21):188-191.DOI:10.19850/j.cnki.2096-4706.2022.21.046.
[9]徐曉. 智慧旅游提效能 游客出行更便捷[N]. 中國旅游報(bào),2022-10-14(001).DOI:10.28109/n.cnki.nclyb.2022.002766.
[10]楊金玉,曲澤靜.大數(shù)據(jù)背景下智慧旅游平臺(tái)的構(gòu)建——以銅陵市大通古鎮(zhèn)為例[J].內(nèi)蒙古科技與經(jīng)濟(jì),2022(18):95-97.
[11]施展,朱彥.基于Vue與SpringBoot框架的學(xué)生成績(jī)分析和弱項(xiàng)輔助系統(tǒng)設(shè)計(jì)[J].信息技術(shù)與信息化,2022(08):127-131.
[12]姚紅梅,劉亮亮,韓金達(dá),黃琬云,賀皓.基于BIM+GIS技術(shù)的智慧旅游平臺(tái)模型研究[J].信息與電腦(理論版),2022,34(14):41-43.
[13]肖程鳴,曾志穎.基于Spring Boot和Vue的紅色智慧旅游平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].軟件,2022,43(07):30-33+38.
[14]李波. 游客餐飲評(píng)論方面情感分析及智慧旅游平臺(tái)構(gòu)建[D].桂林電子科技大學(xué),2022.DOI:10.27049/d.cnki.ggldc.2022.000080.
[15]代晶蕊. 融合商品評(píng)論方面情感分析的智慧旅游平臺(tái)構(gòu)建[D].桂林電子科技大學(xué),2022.DOI:10.27049/d.cnki.ggldc.2022.000917.
[16]何丞剛,方小明,馮慶鋒. 探索全域旅游小程序平臺(tái)建設(shè)+運(yùn)營新思路[C]//.2022中國旅游科學(xué)年會(huì)論文集:旅游人才建設(shè)與青年人才培養(yǎng).[出版者不詳],2022:215-221.DOI:10.26914/c.cnkihy.2022.031982.
[17]王曼維,楊荻,李巖,及松潔.基于SpringBoot框架的智慧醫(yī)療問診系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].中國醫(yī)學(xué)裝備,2022,19(03):133-136.
[18]Li Hua,Su Tao. SM-PageRank Algorithm-Based User Interest Model for Mobile Smart Tourism Platform[J]. Wireless Communications and Mobile Computing,2022,2022.
[19]劉升華, 市域智慧旅游一卡通系統(tǒng)平臺(tái). 山東省,山東比特旅游科技有限公司,2020-11-28.
[20]胥芮. 呼和浩特智慧旅游平臺(tái)整合營銷傳播策劃方案[D].南京大學(xué),2020.DOI:10.27235/d.cnki.gnjiu.2020.000244.
致 ?謝
逝者如斯夫,不舍晝夜。轉(zhuǎn)眼間,大學(xué)生用戶活便已經(jīng)接近尾聲,人面對(duì)著離別與結(jié)束,總是充滿著不舍與茫然,我亦如此,仍記得那年秋天,我迫不及待的提前一天到了學(xué)校,面對(duì)學(xué)校巍峨的大門,我心里充滿了期待:這里,就是我新生活的起點(diǎn)嗎?那天,陽光明媚,學(xué)校的歡迎儀式很熱烈,我面對(duì)著一個(gè)個(gè)對(duì)著我微笑的同學(xué),仿佛一縷縷陽光透過胸口照進(jìn)了我心里,同時(shí),在那天我認(rèn)識(shí)可愛的室友,我們攜手共同度過了這難忘的兩年。如今,我望著這篇論文的致謝,不禁又要問自己:現(xiàn)在,我們就要說再見了嗎?
感慨莫名,不知所言。遙想當(dāng)初剛來學(xué)校的時(shí)候,心里總是想著工科學(xué)校會(huì)過于板正,會(huì)缺乏一些柔情,當(dāng)時(shí)心里甚至有一點(diǎn)點(diǎn)排斥,但是隨著我對(duì)學(xué)校的慢慢認(rèn)識(shí)與了解,我才認(rèn)識(shí)到了她的美麗,她的柔情,并且慢慢的喜歡上了這個(gè)校園,但是時(shí)間太快了,快到我還沒有好好體會(huì)她的美麗便要離開了,但是她帶給我的回憶,永遠(yuǎn)不會(huì)離開我,也許真正離開那天我的眼里會(huì)滿含淚水,我不是因?yàn)殡y過,我只是想將她的樣子映在我的淚水里,刻在我的心里。最后,感謝我的老師們,是你們教授了我們知識(shí)與做人的道理;感謝我的室友們,是你們陪伴了我如此之久;感謝每位關(guān)心與支持我的人。
少年,追風(fēng)趕月莫停留,平荒盡處是春山。文章來源:http://www.zghlxwxcb.cn/news/detail-735066.html
免費(fèi)領(lǐng)取項(xiàng)目源碼,請(qǐng)關(guān)注?點(diǎn)贊收藏并私信博主,謝謝~文章來源地址http://www.zghlxwxcb.cn/news/detail-735066.html
到了這里,關(guān)于springboot+mysql+微信小程序智慧旅游平臺(tái)-計(jì)算機(jī)畢業(yè)設(shè)計(jì)源碼61441的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!