基于springboot的演唱會(huì)購(gòu)票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
基于springboot的演唱會(huì)購(gòu)票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
基于springboot的演唱會(huì)購(gòu)票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
基于springboot的演唱會(huì)購(gòu)票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
基于springboot的演唱會(huì)購(gòu)票系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

大型門戶網(wǎng)站提供了查看演唱會(huì)信息和支付購(gòu)票的基本服務(wù),但一些知名的網(wǎng)站則提供了更加豐富和完善的服務(wù),以滿足不同的需求。隨著時(shí)間的推移,國(guó)外的票務(wù)網(wǎng)站數(shù)量不斷增加,其中最具代表性的例子就是Ticketmaster、Eventbrite、Stubhub和viagogoREF_Ref24843\r\h[3]。Ticketmaster是一個(gè)老牌的網(wǎng)絡(luò)售票公司,它以B2C網(wǎng)絡(luò)售票為核心,通過(guò)網(wǎng)絡(luò)預(yù)定,電話預(yù)定,零售銷售等方式進(jìn)行。這個(gè)站點(diǎn)有兩種選擇:互動(dòng)選擇和系統(tǒng)指派。在對(duì)使用者的基本要求進(jìn)行分析的基礎(chǔ)上,根據(jù)使用者的要求,為使用者提供最優(yōu)的解決方案。Eventbrite在線售票網(wǎng)站采取了B2C的模式,可以為用戶提供宣傳和購(gòu)票等便利的服務(wù),在滿足用戶基本需要的同時(shí),還可以提供高質(zhì)量的服務(wù)。國(guó)內(nèi)的豆瓣網(wǎng)站也采用了類似的模式,實(shí)現(xiàn)了完全的電子化,從而使得兩者之間的差異更加明顯。Stubhub是一個(gè)新興的票務(wù)轉(zhuǎn)售拍賣網(wǎng)站REF_Ref24918\r\h[4],它的發(fā)展可以追溯到eBay,而“票蟲網(wǎng)”也有類似的特點(diǎn),但是它的規(guī)模和影響力要遠(yuǎn)遠(yuǎn)超過(guò)eBay。在海外,可以選擇各種各樣的訂票方法,并且擁有大量專業(yè)的訂票網(wǎng)站。它們各具特色,為游客帶來(lái)更加便捷、高效的訂票體驗(yàn)。此外,許多訂票網(wǎng)站還為游客提供了豐富的信息,包括實(shí)時(shí)座位信息、安檢信息等。在海外,有許多獨(dú)特的旅游服務(wù),值得深入研究。隨著科技的發(fā)展,國(guó)內(nèi)的在線訂票網(wǎng)站數(shù)量激增,從淘寶網(wǎng)到京東網(wǎng),從中國(guó)票務(wù)網(wǎng)到聚橙網(wǎng),從格瓦拉網(wǎng)到千票網(wǎng),從永樂票務(wù)到大麥網(wǎng),這些網(wǎng)站構(gòu)成了一個(gè)完整的票務(wù)銷售和服務(wù)體系,其中一些甚至是專門為網(wǎng)站提供的售票服務(wù)。一些比較好的平臺(tái)是大麥網(wǎng)和永樂網(wǎng),而其他一些網(wǎng)站不夠漂亮,有些網(wǎng)站的票務(wù)和票務(wù)條件也不理想。雖然系統(tǒng)在使用中沒有問題,但系統(tǒng)穩(wěn)定性等方面都不理想。1.4論文組織架構(gòu)本文的結(jié)構(gòu)如下:第1章:緒論。對(duì)選題的背景進(jìn)行了分析,指出了選題的目的與意義,并對(duì)國(guó)內(nèi)外的研究現(xiàn)狀進(jìn)行了綜述。概括本文的主體框架。第2章:相關(guān)理論和技術(shù)。詳細(xì)探討了本論文所采用的技術(shù)方法和組織結(jié)構(gòu),并對(duì)其所牽涉到的關(guān)鍵技術(shù)進(jìn)行了深入研究和闡述。第3章:系統(tǒng)分析。對(duì)系統(tǒng)進(jìn)行分析以及可行性研究,從技術(shù)、經(jīng)濟(jì)和社會(huì)三個(gè)層面,全面分析了系統(tǒng)的可行性。第4章:系統(tǒng)設(shè)計(jì)。在系統(tǒng)可行性研究的基礎(chǔ)上,對(duì)演出購(gòu)票系統(tǒng)進(jìn)行了詳細(xì)的設(shè)計(jì),包括各功能模塊的設(shè)計(jì),UI界面設(shè)計(jì),數(shù)據(jù)庫(kù)的建立等。第5章:系統(tǒng)實(shí)現(xiàn)。對(duì)系統(tǒng)的各個(gè)功能模塊進(jìn)行詳細(xì)的描述,著重寫出了功能模塊實(shí)現(xiàn)的具體代碼。第6章:系統(tǒng)測(cè)試。對(duì)各主要功能模塊進(jìn)行了功能測(cè)試,給出了具體實(shí)現(xiàn)步驟和測(cè)試結(jié)果。第2章相關(guān)理論和技術(shù)2.1Java簡(jiǎn)介最初由Sun公司開發(fā)的Java程序設(shè)計(jì)語(yǔ)言,在1995年5月官方公布,該語(yǔ)言包括程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),網(wǎng)絡(luò),應(yīng)用程序等功能。為程序設(shè)計(jì)人士創(chuàng)造了一種快速、靈巧的程序設(shè)計(jì)開發(fā)工具,從而迅速地獲得了程序設(shè)計(jì)愛好者的認(rèn)可,也為Java編程語(yǔ)言的未來(lái)發(fā)展打下了扎實(shí)的基石。Java平臺(tái)是一個(gè)多功能的軟件,它包含了三個(gè)不同的開發(fā)系統(tǒng):J2SE(Java2PlatformStandardEdition)的標(biāo)準(zhǔn)版,J2EE(java2PPlatformEnterpriseEdition)的企業(yè)版,和j2ME(java2PlatformStandardEdition)的小型版。Java是一種優(yōu)秀的編程語(yǔ)言,在互聯(lián)網(wǎng)上得到了廣泛的應(yīng)用。Java的獨(dú)特性體現(xiàn)在它擁有一系列前所未見的特性,比如消除了傳統(tǒng)語(yǔ)言中復(fù)雜的指針定義,以及解決了邏輯操作語(yǔ)句和賦值語(yǔ)句的模糊性,使得java更加簡(jiǎn)潔高效。在此基礎(chǔ)上,提出了一種新的、可靠的、可控的程序設(shè)計(jì)方案,實(shí)現(xiàn)了對(duì)存儲(chǔ)空間的有效控制與管理。更為重要的是,JavaREF_Ref17110\r\h[6]程序開發(fā)工作人員不需要在系統(tǒng)中對(duì)內(nèi)存進(jìn)行分配和釋放以及二次分配,在編寫的過(guò)程當(dāng)中可以完全忽略內(nèi)存的影響,由后臺(tái)的Java虛擬服務(wù)組件等機(jī)制進(jìn)行處理,這些新特性就決定了Java的出現(xiàn)會(huì)受到廣大代碼編寫人員的青睞。Java語(yǔ)言的核心架構(gòu)提供了大量實(shí)用的類庫(kù)函數(shù),它們能夠讓編寫者輕松地訪問,而無(wú)須重新編寫,從而大大提高編寫效率,極大地縮短編碼周期。Java語(yǔ)言的應(yīng)用非常普遍,尤其適用于企業(yè)級(jí)應(yīng)用程序流程的開發(fā)。它擁有大量的類庫(kù),能夠輕松地應(yīng)用于各種場(chǎng)景。此外,它的易用性和后期維護(hù)能力都非常強(qiáng),所以它成為一個(gè)非常好的選擇。2.2MySQL特點(diǎn)MySQL擁有多種先進(jìn)的數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù),它們各具特色,滿足各種復(fù)雜的應(yīng)用需求。使用者可以根據(jù)需求,從多種技術(shù)中挑選出最佳的,從而達(dá)到更好的效果,特別是在面對(duì)日均上億次的高級(jí)查詢?nèi)蝿?wù)時(shí)。MySQL5擁有強(qiáng)大的功能,包括處理事件、創(chuàng)建視圖、記錄過(guò)程和觸發(fā)器。 MySQL運(yùn)行:一個(gè)突出的特點(diǎn)是它的高效率性能。其使用了Break-Tree磁盤表(MyISAM),并將索引壓縮,因此提供了更快的存取體驗(yàn);此外,它還采用了一種更加精細(xì)的單向掃描技術(shù),能夠更加迅捷地完成各種數(shù)據(jù)交換;而且,它的SQL語(yǔ)句也采用了最先進(jìn)的類庫(kù),具有更強(qiáng)的執(zhí)行能力。MySQL數(shù)據(jù)庫(kù)具有極低的成本,它是一款完全免費(fèi)的AP,用戶可以輕松訪問并使用它。MySQL擁有強(qiáng)大的功能,可以容納多種不同的編程語(yǔ)言,從php到Java,從Eiffel到Ruby,從Tcl到C,從c++到Perl,mysql都能夠滿足您的需求。此外,mysql還擁有豐富的api函數(shù),可以滿足您的多樣化需求。MySQL數(shù)據(jù)庫(kù)擁有極高的存儲(chǔ)能力,其表的尺寸取決于操作系統(tǒng)的文檔尺寸,這種尺寸的變化并非完全取決于MySQL本身的設(shè)置。為了更好地管理數(shù)據(jù),InnoDB存儲(chǔ)技術(shù)允許用戶從一個(gè)表中添加更多的表,從而提高數(shù)據(jù)的安全性和完整性。該表的存儲(chǔ)能力極強(qiáng),其中包含64TB的存儲(chǔ)空間,足夠支持擁有上千萬(wàn)條記錄的龐大數(shù)據(jù)集。MySQL擁有豐富的內(nèi)部程序,其中PHP包含了webAP的基本需求。MySQL還擁有豐富的擴(kuò)展程序,例如MySQLi,這些程序都具備高效的存儲(chǔ)和管理功能。MySQLi還具備完善的用戶界面,使用戶在使用mysql時(shí)更加輕松和高效。2.3Springboot介紹Springboot是一款基于Spring4.0的框架,它擁有更多的優(yōu)勢(shì),可以大幅度簡(jiǎn)化Spring應(yīng)用程序的構(gòu)建和開發(fā),同時(shí)也可以支持更多的第三方技術(shù),從而提高系統(tǒng)的性能。通過(guò)解決項(xiàng)目中的依賴包沖突和不穩(wěn)定性問題,可以大大提升系統(tǒng)開發(fā)的效率,并且大大減少了開發(fā)過(guò)程的復(fù)雜性。Spring框架是一個(gè)由Java公司發(fā)布的開放式框架,其特點(diǎn)之一就是可以實(shí)現(xiàn)反向調(diào)整,這一特性大大減少了編碼的復(fù)雜性,因此,Java領(lǐng)域的Spring框架一直備受青睞,后來(lái)更進(jìn)一步,成為EJB(EnterpriseJavaBeans)框架的重要組成部分,并取得了巨大的成就。Spring框架可以有效地支撐開發(fā),它可以充分利用其獨(dú)有的控制反向功能,從而更好地支撐Web框架的開發(fā)。Spring框架的核心功能之一就是支持多種類型的Java應(yīng)用程序,它可以實(shí)現(xiàn)快速、靈活的調(diào)度,以及支持多種類型的編程語(yǔ)言,它可以根據(jù)需要,自動(dòng)調(diào)整編程語(yǔ)言的參數(shù),以及調(diào)整編程語(yǔ)言的結(jié)構(gòu),從而更好地支持多種類型的應(yīng)用程序。容器的設(shè)計(jì)方式包括:從XML文件中提取參數(shù),并在其中添加Java語(yǔ)言的解析,從而創(chuàng)建一個(gè)新的、具有用戶體驗(yàn)的實(shí)體,并且根據(jù)需要進(jìn)行調(diào)整。第3章系統(tǒng)分析3.1可行性分析3.1.1技術(shù)可行性在本系統(tǒng)的研發(fā)過(guò)程中,技術(shù)的可行性主要表現(xiàn)在所使用的技術(shù)、平臺(tái)、架構(gòu)和設(shè)計(jì)方式等方面。在對(duì)Springboot演唱會(huì)門票系統(tǒng)進(jìn)行開發(fā)的時(shí)候,使用了Java作為后端開發(fā)語(yǔ)言,在開發(fā)的過(guò)程中,基于Springboot框架,Vue和MySQL作為前端框架和數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的存儲(chǔ),Navicat作為數(shù)據(jù)庫(kù)工具,Tomcat作為開發(fā)工具,來(lái)構(gòu)建IDEA服務(wù)器。同時(shí),大多數(shù)與本系統(tǒng)相關(guān)的開發(fā)工具與技術(shù)都為開源。3.1.2經(jīng)濟(jì)可行性技術(shù)的可行性研究分析完成后,要考慮經(jīng)濟(jì)可行性研究,所開發(fā)的演唱會(huì)購(gòu)票系統(tǒng)有著良好的發(fā)展前景和較高的經(jīng)濟(jì)價(jià)值,且本系統(tǒng)設(shè)計(jì)所需技術(shù)以及開發(fā)工具皆為免費(fèi)。由此可知,本系統(tǒng)的設(shè)計(jì)和開發(fā)在經(jīng)濟(jì)上是可行的。3.1.3操作可行性系統(tǒng)移交給用戶后,必須確保系統(tǒng)易于使用和操作方便。大多數(shù)功能都通過(guò)精心設(shè)計(jì)的圖形界面,大多數(shù)功能可以輕松實(shí)現(xiàn),數(shù)據(jù)輸入也應(yīng)該盡可能地簡(jiǎn)潔、完整,避免歧義,以便管理者和用戶更加輕松地查看自身的信息。此外,系統(tǒng)的操作流程應(yīng)該簡(jiǎn)潔、高效,并且要對(duì)不同等級(jí)的用戶進(jìn)行有效的管理。經(jīng)過(guò)仔細(xì)的分析和評(píng)估,可以斷定,這項(xiàng)開發(fā)在實(shí)施上具有可行性和可靠性。3.1.4法律可行性從法律上看,整個(gè)開發(fā)過(guò)程有如下特點(diǎn):法律上可以獲取用于發(fā)展的全部技術(shù)資料;在開發(fā)的全過(guò)程中,沒有涉及到知識(shí)產(chǎn)權(quán)方面的問題;本軟件的制作過(guò)程未從其他網(wǎng)站拷貝,且不存在對(duì)著作權(quán)的侵權(quán)行為;所有的開發(fā)過(guò)程均為其自身的、原始性的勞動(dòng),并無(wú)任何法律上的義務(wù)。3.2需求分析系統(tǒng)的功能需求分析能夠更深入地了解在軟件功能需求的實(shí)現(xiàn)過(guò)程中,所需要實(shí)現(xiàn)的功能和不需要實(shí)現(xiàn)的功能。通過(guò)對(duì)上述功能的有效分析,可以實(shí)現(xiàn)對(duì)軟件產(chǎn)品的早期缺陷的及時(shí)檢測(cè),從而極大地提升軟件產(chǎn)品的制作效率,降低開發(fā)成本,并顯著提升軟件產(chǎn)品的質(zhì)量。3.2.1功能需求分析在基于Springboot的演唱會(huì)購(gòu)票系統(tǒng)中,用戶通過(guò)注冊(cè)、登錄,進(jìn)入到系統(tǒng)后,可以直接進(jìn)入頁(yè)面,查看演唱會(huì)的信息,了解音樂演唱會(huì)的類別信息,查看購(gòu)票的座位,聯(lián)系在線客服,并進(jìn)行訂單的支付。在后臺(tái),管理員可以完成對(duì)個(gè)人中心、用戶、演唱會(huì)詳情、演唱會(huì)的分類、排期和系統(tǒng)的管理等功能。無(wú)論你是一個(gè)管理員,還是一個(gè)用戶,你都應(yīng)該按照同樣的方式登陸。登陸后,系統(tǒng)會(huì)先驗(yàn)證賬號(hào)和口令,確認(rèn)賬號(hào)和口令無(wú)誤后,才會(huì)開始詢問賬號(hào)的使用權(quán)限,并給出相應(yīng)的使用權(quán)限。登錄成功后,會(huì)跳轉(zhuǎn)網(wǎng)頁(yè),若某一項(xiàng)發(fā)生錯(cuò)誤,則會(huì)提示賬號(hào)或密碼輸入錯(cuò)誤,需再次輸入賬號(hào)和密碼,方可登錄。本系統(tǒng)的具體登錄流程如圖3.1所示:NNY開始輸入賬號(hào)和密碼檢測(cè)賬號(hào)和密碼是否正確查詢角色權(quán)限登錄成功頁(yè)面跳轉(zhuǎn)結(jié)束賬號(hào)和密碼錯(cuò)誤,返回圖3.1登錄流程圖注冊(cè)流程如圖3.2所示:注冊(cè)界面注冊(cè)界面用戶注冊(cè)輸入注冊(cè)信息判斷用戶是否存在按照要求規(guī)范填寫用戶存在是否符合輸入規(guī)范注冊(cè)成功信息存入數(shù)據(jù)庫(kù)登錄界面YYNN 圖3.2注冊(cè)流程圖3.2.2非功能需求分析在演唱會(huì)票務(wù)系統(tǒng)平臺(tái)的開發(fā)過(guò)程中,不僅要關(guān)注演唱會(huì)購(gòu)票業(yè)務(wù)本身,還要保證其性能。從以下兩個(gè)方面分析了演唱會(huì)購(gòu)票系統(tǒng)的非功能性需求,包括可靠性通過(guò)四個(gè)關(guān)鍵要素的深入研究,演出購(gòu)票系統(tǒng)不僅要具備功能,還要具備良好的可靠性和穩(wěn)定性。(1)可靠性:對(duì)身份的訪問控制確保了系統(tǒng)的安全、正常和可靠運(yùn)行。演唱會(huì)門票數(shù)據(jù)在輸入、存儲(chǔ)、傳輸和處理過(guò)程中應(yīng)始終保持完整性和一致性。(2)系統(tǒng)的穩(wěn)定性是至關(guān)重要的,它不僅要求數(shù)據(jù)的可靠性,還要求系統(tǒng)能夠在任何情況下都能夠穩(wěn)定運(yùn)行。不應(yīng)該以犧牲系統(tǒng)穩(wěn)定性為代價(jià)過(guò)分強(qiáng)調(diào)新技術(shù),也不應(yīng)該以損害系統(tǒng)運(yùn)行和安全為代價(jià)過(guò)分重視穩(wěn)定性。3.2.3系統(tǒng)用例圖本系統(tǒng)分為超級(jí)管理員和普通用戶兩種角色。普通的個(gè)人用戶登陸后可以進(jìn)行演唱會(huì)場(chǎng)次以及詳細(xì)信息的查看、依照個(gè)人喜好進(jìn)行購(gòu)票、對(duì)客服進(jìn)行問題咨詢、管理個(gè)人基本信息操作等,用戶用例圖如圖3.3所示。用戶用戶管理個(gè)人信息咨詢客服查看演唱會(huì)購(gòu)票圖3.3用戶用例圖

管理員可以進(jìn)行個(gè)人中心的基本信息管理、用戶信息的管理、演唱會(huì)的分類別及介紹管理、管理演唱會(huì)基本信息、系統(tǒng)整體的管理、對(duì)于訂單的增刪改查操作等,管理員用例圖如圖3.4所示。管理員管理個(gè)人中心管理員管理個(gè)人中心管理用戶信息管理演唱會(huì)類別管理訂單管理系統(tǒng)管理演唱會(huì)信息

第4章系統(tǒng)設(shè)計(jì)4.1功能模塊設(shè)計(jì)通過(guò)對(duì)系統(tǒng)功能的分析,演唱會(huì)購(gòu)票系統(tǒng)的具體功能模塊包括以下幾個(gè)主要功能模塊:個(gè)人信息管理模塊、用戶管理模塊、演唱會(huì)管理模塊、演唱會(huì)類別管理模塊、訂單管理和系統(tǒng)管理模塊。系統(tǒng)的功能模塊如圖4.1所示:圖4.1系統(tǒng)功能模塊圖4.2數(shù)據(jù)庫(kù)概念設(shè)計(jì)(1)管理員實(shí)體圖管理員實(shí)體包括密碼、賬號(hào)等屬性,如圖4.2所示:賬號(hào)賬號(hào)密碼管理員圖4.2管理員實(shí)體圖(2)用戶實(shí)體圖用戶實(shí)體包括賬號(hào)、昵稱、手機(jī)、余額、頭像、性別、密碼等屬性,如圖4.3所示:賬號(hào)賬號(hào)昵稱手機(jī)密碼性別頭像用戶余額圖4.3用戶實(shí)體圖(3)演唱會(huì)實(shí)體圖演唱會(huì)實(shí)體包括標(biāo)題、簡(jiǎn)介、圖片、內(nèi)容等屬性,如圖4.4所示:標(biāo)題標(biāo)題圖片簡(jiǎn)介內(nèi)容演唱會(huì)圖4.4演唱會(huì)實(shí)體圖(4)在線客服實(shí)體圖在線客服實(shí)體包括用戶ID、用戶提問、管理員ID、管理員是否進(jìn)行回復(fù),回復(fù)的時(shí)間等屬性,如圖4.5所示:用戶ID用戶ID提問管理員id回復(fù)是否回復(fù)在線客服圖4.5在線客服實(shí)體圖(5)訂單實(shí)體圖訂單座位號(hào)訂單座位號(hào)價(jià)格演唱會(huì)名稱購(gòu)買數(shù)量用戶ID訂單編號(hào)圖4.6訂單實(shí)體圖(6)演唱會(huì)購(gòu)票系統(tǒng)E-R圖本系統(tǒng)包括演唱會(huì)與用戶兩個(gè)實(shí)體,系統(tǒng)的E-R如圖4.7所示:圖4.7演唱會(huì)購(gòu)票系統(tǒng)E-R圖4.3數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)在針對(duì)此系統(tǒng)基礎(chǔ)上,提出了一種新的邏輯結(jié)構(gòu),并在此基礎(chǔ)上實(shí)現(xiàn)了對(duì)數(shù)據(jù)的規(guī)范化、表間關(guān)系的確定以及對(duì)數(shù)據(jù)操作的優(yōu)化。經(jīng)過(guò)深入研究,為不同類型的數(shù)據(jù)實(shí)體建立了一個(gè)完整的數(shù)據(jù)庫(kù)及其詳細(xì)列表。具體表設(shè)計(jì)如下:(1)管理員表users“管理員表”用來(lái)記錄管理員的基本信息,設(shè)定id為唯一標(biāo)識(shí)。users的結(jié)構(gòu)如表4.1所示。表4.1管理員表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵usernamevarchar10用戶名passwordvarchar20密碼rolevarchar50角色管理員addtimetimestamp新增時(shí)間CURRENT_TIMESTAMP(2)收藏表storeup“收藏表”用來(lái)查看個(gè)人收藏的信息。storeup的結(jié)構(gòu)如表4.2所示。表4.2收藏表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPuseridbigint用戶idrefidbigint商品idtablenamevarchar100表名namevarchar200名稱picturelongtext4294967295圖片typevarchar2000類型1inteltypevarchar50推薦類型remarkvarchar240備注(3)用戶表yonghu“用戶表”是用來(lái)存儲(chǔ)記錄用戶基礎(chǔ)信息。yonghu的結(jié)構(gòu)如表4.3所示。表4.3用戶表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPzhanghaovarchar40賬號(hào)mimavarchar20密碼nichengvarchar30昵稱xingbievarchar4性別shoujivarchar11手機(jī)touxianglongtext4294967295頭像moneyfloat余額0(4)訂單表orders“訂單表”是用來(lái)記錄訂單的信息。orders的結(jié)構(gòu)如表4.4所示。表4.4訂單表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPorderidvarchar25訂單編號(hào)tablenamevarchar50商品表名yanchanghuiuseridbigint用戶idgoodidbigint商品idgoodnamevarchar30商品名稱picturelongtext4294967295商品圖片buynumberint購(gòu)買數(shù)量pricefloat價(jià)格0discountpricefloat折扣價(jià)格0totalfloat總價(jià)格0discounttotalfloat折扣總價(jià)格0typeint支付類型1statusvarchar200狀態(tài)addressvarchar200地址telvarchar11電話consigneevarchar30收貨人(5)演唱會(huì)表news“演唱會(huì)表”來(lái)存儲(chǔ)演唱會(huì)的詳情信息。news的結(jié)構(gòu)如表4.5所示。表4.5演唱會(huì)表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPtitlevarchar50標(biāo)題introductionlongtext4294967295簡(jiǎn)介picturelongtext4294967295圖片contentlongtext4294967295內(nèi)容(6)演唱會(huì)評(píng)論表discussyanchanghui“演唱會(huì)評(píng)論表”是用來(lái)記錄演唱會(huì)評(píng)論的信息。discussyanchanghui的結(jié)構(gòu)如表4.6所示。表4.6演唱會(huì)評(píng)論表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPrefidbigint關(guān)聯(lián)表iduseridbigint用戶idavatarurllongtext4294967295頭像nicknamevarchar200用戶名contentlongtext4294967295評(píng)論內(nèi)容replylongtext4294967295回復(fù)內(nèi)容(7)在線客服表chat“在線客服表”是記錄在線客服的信息。chat的結(jié)構(gòu)如表4.7所示。表4.7在線客服表字段名稱類型長(zhǎng)度字段說(shuō)明主鍵默認(rèn)值idbigint主鍵主鍵addtimetimestamp創(chuàng)建時(shí)間CURRENT_TIMESTAMPuseridbigint用戶idadminidbigint管理員idasklongtext4294967295提問replylongtext4294967295回復(fù)isreplyint是否回復(fù)第5章系統(tǒng)實(shí)現(xiàn)5.1實(shí)現(xiàn)環(huán)境本系統(tǒng)的開發(fā)需要使用以下幾種不同的技術(shù):Java編程語(yǔ)言,Springboot框架,JDK1.8版,tomcat7服務(wù)器,MySQL5.7,Navicat11數(shù)據(jù)庫(kù)開發(fā)工具,idea,Maven(Maven3.3.9),以及谷歌瀏覽器。5.2登錄如果用戶是第一次進(jìn)入系統(tǒng),那么可以點(diǎn)擊右上角的登錄/注冊(cè),跳轉(zhuǎn)至登錄注冊(cè)頁(yè)面,若用戶要注冊(cè),則需要輸入自己的詳情信息,此時(shí)將用戶信息新增一條寫入用戶表中。用戶注冊(cè)界面如圖5.1所示:圖5.1用戶注冊(cè)界面登陸的時(shí)候,設(shè)置路由守衛(wèi),攔截非密碼方式進(jìn)入,用戶必須先輸入你的使用者名稱及口令,再點(diǎn)擊“登錄”按鈕進(jìn)入,系統(tǒng)查詢用戶表,比對(duì)正確后進(jìn)入主頁(yè)面。用戶登錄界面如圖5.2所示:圖5.2用戶登錄界面當(dāng)管理員登陸,輸入正確的帳號(hào)密碼,進(jìn)入后臺(tái)管理的主頁(yè)。如果鍵入的使用者名稱或口令是錯(cuò)誤的,則會(huì)收到攔截并有提示信息彈出。后臺(tái)登錄界面如圖5.3所示:圖5.3后臺(tái)登錄界面圖5.4用戶注冊(cè)成功界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@IgnoreAuth @PostMapping(value="/login") publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){ UsersEntityuser=userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",username)); if(user==null||!user.getPassword().equals(password)){ returnR.error("賬號(hào)或密碼不正確"); } Stringtoken=tokenService.generateToken(user.getId(),username,"users",user.getRole()); returnR.ok().put("token",token); }5.3演唱會(huì)訂票用戶登錄成功進(jìn)入系統(tǒng)后,再次點(diǎn)擊“演唱會(huì)”按鈕,進(jìn)入在演唱會(huì)界面,用戶可以查看演唱會(huì)的類別、地址和價(jià)格。如圖5.5、5.6、5.7所示: 圖5.5用戶查看演唱會(huì)界面 圖5.6用戶查看演唱會(huì)類別界面圖5.7用戶查看演唱會(huì)地址和價(jià)格界面用戶點(diǎn)擊演唱會(huì)預(yù)告圖片可以查看演唱會(huì)詳情,預(yù)定演唱會(huì),在平臺(tái)上評(píng)論、選座位、預(yù)定和支付價(jià)錢。如圖5.8、5.9、5.10、5.11所示:圖5.8用戶查看演唱會(huì)詳情界面圖5.9用戶評(píng)論界面圖5.10用戶確定預(yù)定界面圖5.11用戶確定支付界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@IgnoreAuth@RequestMapping("/list")publicRlist(@RequestParamMap<String,Object>params,YanchanghuiEntityyanchanghui, HttpServletRequestrequest){EntityWrapper<YanchanghuiEntity>ew=newEntityWrapper<YanchanghuiEntity>(); PageUtilspage=yanchanghuiService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew,yanchanghui),params),params));returnR.ok().put("data",page);}5.4個(gè)人中心以用戶身份登錄到系統(tǒng)中,進(jìn)入個(gè)人中心界面,可以對(duì)個(gè)人信息進(jìn)行重新設(shè)置以及更新。個(gè)人中心界面如圖5.12所示:圖5.12個(gè)人中心界面在個(gè)人中心點(diǎn)擊點(diǎn)我充值,充值需借助第三方的接口。充值界面如圖5.13所示:圖5.13用戶充值界面在個(gè)人中心點(diǎn)擊我的訂單,用戶可查看個(gè)人購(gòu)票訂單。如圖5.14所示:圖5.14用戶查看我的訂界面在個(gè)人中心找到我的收藏并點(diǎn)擊,則用戶可以自己查看收藏的演唱會(huì)記錄。如圖5.15所示:圖5.15我的收藏界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/lists")publicRlist(OrdersEntityorders){ EntityWrapper<OrdersEntity>ew=newEntityWrapper<OrdersEntity>(); ew.allEq(MPUtil.allEQMapPre(orders,"orders"));returnR.ok().put("data",ordersService.selectListView(ew));} /***查詢*/@RequestMapping("/query")publicRquery(OrdersEntityorders){EntityWrapper<OrdersEntity>ew=newEntityWrapper<OrdersEntity>(); ew.allEq(MPUtil.allEQMapPre(orders,"orders")); OrdersViewordersView=ordersService.selectView(ew); returnR.ok("查詢訂單成功").put("data",ordersView);}5.5演唱會(huì)管理以管理員身份登錄到系統(tǒng)中,由于權(quán)限的不同分配,管理員進(jìn)入到演唱會(huì)管理界面后,進(jìn)入演唱會(huì)列表界面,可實(shí)現(xiàn)對(duì)演唱會(huì)和評(píng)論的增刪改查操作。演唱會(huì)管理界面如圖5.16所示:圖5.16演唱會(huì)管理界面管理員在演唱會(huì)界面點(diǎn)擊查看評(píng)論,可查看用戶對(duì)演唱會(huì)的評(píng)論。如圖5.17所示:圖5.17管理員查看評(píng)論界面管理員點(diǎn)擊回復(fù)可對(duì)用戶的評(píng)論進(jìn)行回復(fù)。如圖5.18所示:圖5.18評(píng)論回復(fù)界面管理員在演唱會(huì)界面點(diǎn)擊修改,可修改演唱會(huì)的詳細(xì)情況。如圖5.19所示:圖5.19修改詳情界面管理員在演唱會(huì)界面點(diǎn)擊詳情,可查看演唱會(huì)的詳細(xì)情況。如圖5.20所示:圖5.20演唱會(huì)詳情界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/add")publicRadd(@RequestBodyYanchanghuiEntityyanchanghui,HttpServletRequestrequest){ yanchanghui.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue()); //ValidatorUtils.validateEntity(yanchanghui);yanchanghuiService.insert(yanchanghui);returnR.ok();}/***修改*/@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyYanchanghuiEntityyanchanghui,HttpServletRequestrequest){//ValidatorUtils.validateEntity(yanchanghui);yanchanghuiService.updateById(yanchanghui);//全部更新returnR.ok();}5.6在線客服管理以普通用戶身份登錄到購(gòu)票系統(tǒng)中,進(jìn)入到在線客服管理界面,找到在線客服列表界面,手動(dòng)輸入信息進(jìn)行提問。在線客服管理界面如圖5.21所示:圖5.21在線客服管理界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/lists")publicRlist(ChatEntitychat){ EntityWrapper<ChatEntity>ew=newEntityWrapper<ChatEntity>(); ew.allEq(MPUtil.allEQMapPre(chat,"chat"));returnR.ok().put("data",chatService.selectListView(ew));} /***查詢*/@RequestMapping("/query")publicRquery(ChatEntitychat){EntityWrapper<ChatEntity>ew=newEntityWrapper<ChatEntity>(); ew.allEq(MPUtil.allEQMapPre(chat,"chat")); ChatViewchatView=chatService.selectView(ew); returnR.ok("查詢?cè)诰€客服成功").put("data",chatView);}5.7訂單管理以管理員身份登錄到系統(tǒng)中,進(jìn)入到訂單管理界面,輸入訂單編號(hào)或商品名稱,對(duì)訂單進(jìn)行查找,還可以對(duì)訂單刪除修改等操作。訂單界面如圖5.22所示:圖5.22訂單管理界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/page")publicRpage(@RequestParamMap<String,Object>params,OrdersEntityorders, HttpServletRequestrequest){ if(!request.getSession().getAttribute("role").toString().equals("管理員")){ orders.setUserid((Long)request.getSession().getAttribute("userId")); }EntityWrapper<OrdersEntity>ew=newEntityWrapper<OrdersEntity>(); PageUtilspage=ordersService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew,orders),params),params));returnR.ok().put("data",page);}5.8用戶管理以管理員身份登錄到系統(tǒng)中,進(jìn)入到用戶管理界面后,可實(shí)現(xiàn)對(duì)普通用戶的基本管理,還可以對(duì)普通用戶進(jìn)行添加、修改、刪除、批量刪除、查看詳情等操作。用戶管理界面如圖5.23所示:圖5.23用戶管理界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/lists")publicRlist(YonghuEntityyonghu){ EntityWrapper<YonghuEntity>ew=newEntityWrapper<YonghuEntity>(); ew.allEq(MPUtil.allEQMapPre(yonghu,"yonghu"));returnR.ok().put("data",yonghuService.selectListView(ew));} /***查詢*/@RequestMapping("/query")publicRquery(YonghuEntityyonghu){EntityWrapper<YonghuEntity>ew=newEntityWrapper<YonghuEntity>(); ew.allEq(MPUtil.allEQMapPre(yonghu,"yonghu")); YonghuViewyonghuView=yonghuService.selectView(ew); returnR.ok("查詢用戶成功").put("data",yonghuView);}5.9系統(tǒng)管理以管理員身份登錄到后臺(tái)系統(tǒng)中,可以看到輪播圖管理、演唱會(huì)、在線客服。選擇系統(tǒng)管理下的“輪播圖管理”,通過(guò)操作可實(shí)現(xiàn)對(duì)于首頁(yè)輪播圖的管理。輪播圖管理界面如圖5.24所示:圖5.24輪播圖管理界面實(shí)現(xiàn)該功能的關(guān)鍵代碼如下:@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyNewsEntitynews,HttpServletRequestrequest){//ValidatorUtils.validateEntity(news);newsService.updateById(news);//全部更新returnR.ok();}第6章系統(tǒng)測(cè)試為了確保系統(tǒng)能夠穩(wěn)定可靠地運(yùn)行,在完成了各個(gè)功能模塊的設(shè)計(jì),前端操作接口的設(shè)計(jì),并在系統(tǒng)正式運(yùn)行之前,對(duì)系統(tǒng)進(jìn)行了一系列的功能和性能測(cè)試,從而能夠在正式運(yùn)行之前,對(duì)系統(tǒng)進(jìn)行及時(shí)的維護(hù)和改進(jìn)。黑盒試驗(yàn)是對(duì)系統(tǒng)整體性能進(jìn)行檢驗(yàn)的一種方法。在進(jìn)行黑盒測(cè)試的時(shí)候,測(cè)試人員要站在用戶的立場(chǎng)上,利用對(duì)應(yīng)的功能測(cè)試用例,將系統(tǒng)的實(shí)際測(cè)試狀況與期望狀況進(jìn)行對(duì)比,從而可以更好地找出系統(tǒng)中存在的問題。在黑盒試驗(yàn)中,主要利用了位錯(cuò)法和邊界值法。其中,系統(tǒng)誤差的出現(xiàn)幾率遠(yuǎn)遠(yuǎn)大于其本身誤差的出現(xiàn)幾率。所以,邊值分析就是根據(jù)邊值的大小,選擇邊值作為對(duì)系統(tǒng)進(jìn)行測(cè)試,并以此來(lái)判定系統(tǒng)的穩(wěn)定性和可靠性。6.1測(cè)試步驟實(shí)驗(yàn)也要循序漸進(jìn),從邏輯上講,每一步都是從前一步開始的。大型軟件系統(tǒng)通常由多個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)又包含多個(gè)功能模塊。因此,大型軟件程序的測(cè)試主要包括以下步驟:通過(guò)模塊化的方法,發(fā)現(xiàn)程序中存在的編碼缺陷和細(xì)節(jié)缺陷。在此基礎(chǔ)上,對(duì)本系統(tǒng)進(jìn)行了試驗(yàn),并對(duì)其進(jìn)行了驗(yàn)證。差錯(cuò)檢測(cè)中的接收檢驗(yàn)過(guò)程,給出了相應(yīng)的條件。6.2測(cè)試用例6.2.1登錄測(cè)試用例用戶端測(cè)試用例依據(jù)用戶要求進(jìn)行設(shè)計(jì),使用黑盒測(cè)試相關(guān)技術(shù),測(cè)試結(jié)果部分展示如表6.1所示。表6.1登錄測(cè)試用例表測(cè)試編號(hào)測(cè)試目的操作步驟預(yù)期結(jié)果實(shí)際結(jié)果001登錄測(cè)試輸入正確的賬號(hào)和密碼登錄成功登錄成功002登錄測(cè)試輸入錯(cuò)誤的用戶名登錄失敗登錄失敗003登錄測(cè)試輸入錯(cuò)誤的密碼登錄失敗登錄失敗通過(guò)登錄測(cè)試輸入正確的賬號(hào)和密碼,登錄成功測(cè)試圖,如圖6.1所示:圖6.1登錄成功測(cè)試圖通過(guò)登錄測(cè)試輸入錯(cuò)誤的賬號(hào),登錄失敗測(cè)試圖,如圖6.2所示:圖6.2賬號(hào)錯(cuò)誤登錄失敗測(cè)試圖通過(guò)登錄測(cè)試輸入錯(cuò)誤的密碼,登錄失敗測(cè)試圖,如圖6.3所示:圖6.3密碼錯(cuò)誤登錄失敗測(cè)試圖6.2.2管理用戶測(cè)試用例管理端在運(yùn)行時(shí)要滿足瀏覽器的運(yùn)行需求,比如添加用戶信息測(cè)試、修改用戶信息測(cè)試、刪除用戶信息測(cè)試等。本節(jié)根據(jù)管理端各模塊進(jìn)行測(cè)試,因考慮到本文篇幅有限,這里代表性的部分測(cè)試用例,如表6.2所示。表6.2用戶管理測(cè)試用例表測(cè)試編號(hào)測(cè)試目的操作步驟預(yù)期結(jié)果實(shí)際結(jié)果001添加用戶信息測(cè)試在添加頁(yè)面輸入用戶信息,點(diǎn)擊確認(rèn)按鈕添加成功添加成功002修改用戶信息測(cè)試在修改頁(yè)面修改用戶信息,點(diǎn)擊確認(rèn)按鈕修改成功修改成功003刪除用戶信息測(cè)試在管理用戶信息頁(yè)面,點(diǎn)擊某一用戶的刪除按鈕刪除成功刪除成功004查詢用戶信息測(cè)試在管理用戶信息頁(yè)面查詢輸入框輸入要查詢的昵稱和性別,點(diǎn)擊查詢按鈕查詢成功查詢成功管理員添加用戶信息成功測(cè)試圖,如圖6.4所示:圖6.4添加成功測(cè)試圖管理員修改用戶信息成功測(cè)試圖,如圖6.5所示:圖6.5修改成功測(cè)試圖管理員刪除用戶信息成功測(cè)試圖,如圖6.6所示:圖6.6修改成功測(cè)試圖管理員查詢用戶信息成功測(cè)試圖,如圖6.7所示:圖6.7查詢成功測(cè)試圖6.2.3用戶訂票測(cè)試用例用戶端在運(yùn)行時(shí)要滿足瀏覽器的運(yùn)行需求,比如用戶支付測(cè)試、用戶退款測(cè)試等。本節(jié)根據(jù)管理端各模塊進(jìn)行測(cè)試,因考慮到本文篇幅有限,這里代表性的部分測(cè)試用例,如表6.3所示。表6.3用戶管理測(cè)試用例表測(cè)試編號(hào)測(cè)試目的操作步驟預(yù)期結(jié)果實(shí)際結(jié)果001測(cè)試用戶是否支付成功在確認(rèn)下單界面,點(diǎn)擊支付按鈕購(gòu)買成功余額不足002測(cè)試用戶是否支付成功在確認(rèn)下單界面,點(diǎn)擊支付按鈕購(gòu)買成功購(gòu)買成功003測(cè)試用戶是否退款成功在我的訂單頁(yè)面,點(diǎn)擊退款按鈕退款成功退款成功004測(cè)試用戶是否取消訂單成功在我的訂單頁(yè)面,點(diǎn)擊取消按鈕取消成功取消成功 圖6.8購(gòu)買成功測(cè)試圖圖6.9余額不足測(cè)試圖圖6.10退款成功測(cè)試圖圖6.11取消成功測(cè)試圖6.3測(cè)試結(jié)論經(jīng)過(guò)對(duì)本系統(tǒng)部分功能的詳細(xì)測(cè)試,從總體上看,無(wú)論是從功能上,還是從用戶體驗(yàn)上,本系統(tǒng)都取得了良好的效果。結(jié)論如今隨著科技的飛速進(jìn)步,計(jì)算機(jī)技術(shù)在不同的行業(yè)得到了大量的運(yùn)用,其相關(guān)的管理系統(tǒng)更加普及,其中包括眾所周知的電子商務(wù)售票系統(tǒng)、門戶網(wǎng)站等,這些都具備獨(dú)特的功能,為企業(yè)提供了更加便捷的服務(wù),為企業(yè)的運(yùn)營(yíng)提供了強(qiáng)大的支持。購(gòu)票系統(tǒng)的實(shí)現(xiàn),將大大為用戶提供便利,這對(duì)演唱會(huì)購(gòu)票系統(tǒng)具有重要意見。本文首先對(duì)選題的現(xiàn)實(shí)意義和當(dāng)前的研究現(xiàn)狀進(jìn)行了說(shuō)明。在詳細(xì)分析了本系統(tǒng)的特點(diǎn)后,論文對(duì)本系統(tǒng)的開發(fā)方法進(jìn)行了詳細(xì)的介紹,包括程序設(shè)計(jì)語(yǔ)言,實(shí)現(xiàn)技術(shù),實(shí)現(xiàn)過(guò)程,以及滿足用戶的要求。在這個(gè)系統(tǒng)的后端,使用了Java語(yǔ)言,使用了Springboot框架,并以MySQL數(shù)據(jù)庫(kù)進(jìn)行了數(shù)據(jù)表的設(shè)計(jì),使用了Navicat作為數(shù)據(jù)庫(kù)工具,選擇了IDEA服務(wù)器搭配Tomcat來(lái)完成了構(gòu)建,設(shè)計(jì)了一個(gè)基于Springboot的演唱會(huì)購(gòu)票系統(tǒng)。本系統(tǒng)主要實(shí)現(xiàn)了個(gè)人中心管理,用戶管理,演唱會(huì)管理,演唱會(huì)類別管理,演唱會(huì)訂單管理,以及系統(tǒng)管理。用戶可以在預(yù)購(gòu)演唱會(huì)上看到演唱會(huì)的相關(guān)信息,選擇座位,購(gòu)票。管理員能夠在后臺(tái)對(duì)用戶所購(gòu)買的訂單信息進(jìn)行操作處理,并且能夠?qū)ρ莩鲂畔⑦M(jìn)行添加、刪除、修改、查詢等操作。此次研究仍有許多不足之處。許多關(guān)于演唱會(huì)的重大資訊未被妥善地儲(chǔ)備于數(shù)字庫(kù),而且界面的外形缺乏美感,許多功能菜單的表達(dá)也缺乏清晰的結(jié)構(gòu),使得整個(gè)界面的用戶體驗(yàn)缺乏人文關(guān)懷。為此,未來(lái)的研究與實(shí)踐,將努力彌補(bǔ)這些缺陷,使得開發(fā)的演唱會(huì)管理系統(tǒng)更加完備。參考文獻(xiàn)王藍(lán)茜.電視綜藝節(jié)目直播全景聲應(yīng)用個(gè)案研究[D].南京藝術(shù)學(xué)院,2019.董慧.基于場(chǎng)景視角的音樂營(yíng)銷——以李健演唱會(huì)首唱樊沖新作《如果遇見你》為例[J].新聞研究導(dǎo)刊,2019,10(15):228-229.呂崢嶸.大型演唱活動(dòng)安全風(fēng)險(xiǎn)評(píng)估[D].昆明理工大學(xué),2020.藺旭鵬.基于姿勢(shì)識(shí)別的演唱會(huì)精彩動(dòng)作檢測(cè)的研究與實(shí)現(xiàn)[D].北京郵電大學(xué),2020.鄧小淑.演唱會(huì)電影觀看儀式中的粉絲群體互動(dòng)研究[D].深圳大學(xué),2020.陳然.成都市大型演唱會(huì)安保管理情況調(diào)查研究[D].電子科技大學(xué),2021.白曉煒.與時(shí)代共舞各民族同歌——大型演唱會(huì)《各族兒女心向黨》述評(píng)[J].人民音樂,2021(06):10-16.王劭穎.演出類直播用戶參與動(dòng)機(jī)及其對(duì)參與意愿的影響研究[D].暨南大學(xué),2021.劉永樂,張景秋.大型演唱會(huì)舉辦城市粉絲群體的交通出行特征研究——以北京為例[J].北京聯(lián)合大學(xué)學(xué)報(bào),2021,35(04):34-39.蔡卓爾,惠悲荷.線上演唱會(huì)的虛擬在場(chǎng)研究——基于互動(dòng)儀式鏈視角[J].新媒體研究,2022,8(08):23-25+58.鄭彬.青春追憶與社交陪伴:直播場(chǎng)景下線上演唱會(huì)的共情傳播——以西城男孩線上演唱會(huì)為例[J].新媒體研究,2022,8(09):87-89+94.姚詩(shī)湫,白璐,陳曉蝶,谷賢怡.基于網(wǎng)絡(luò)直播演唱會(huì)的新時(shí)代線上娛樂行業(yè)探究[J].中國(guó)市場(chǎng),2022(24):180-182.劉子倩.缺席的在場(chǎng):線上演唱會(huì)的場(chǎng)景建構(gòu)與情感邏輯[J].新媒體研究,2022,8(23):105-108.陳一奔,段鵬程.擴(kuò)展現(xiàn)實(shí)技術(shù)介入下的云端演唱會(huì)景觀——基于元宇宙空間虛擬架構(gòu)的視角[J].湖北文理學(xué)院學(xué)報(bào),2022,43(12):78-84.張毅.《江蘇衛(wèi)視2023跨年演唱會(huì)》:堅(jiān)持真唱標(biāo)準(zhǔn),打造品質(zhì)音樂盛會(huì)[J].中國(guó)廣播影視,2023(02):26-29.白楊.李玟VR演唱會(huì):看到的看不到的[N].21世紀(jì)經(jīng)濟(jì)報(bào)道,2023-01-06(011).蔡華東.海峽不隔故土情老歌鄉(xiāng)音中秋甜——蔡琴“銀色月光下”演唱會(huì)紀(jì)事[J].湖北文史,2022(02):158-165.何馬玉涓.情景煉境:藝術(shù)作品的現(xiàn)實(shí)觀照——“新歌唱新疆”歌曲演唱會(huì)的歌詞創(chuàng)作品評(píng)[J].音樂創(chuàng)作,2022(06):119-128.王維浩,劉鳳鳳,徐昌鴻.雨中演唱會(huì)[J].早期教育,2022(49):16-25.李霜,龔宇雯.“草莓巡游者”線上演唱會(huì)的運(yùn)營(yíng)管理探析[J].文學(xué)藝術(shù)周刊,2022(11):73-76.K-PopDiva,AileeLettingHerFans'FantasiesCome,TrueHosts,AnXRMusicConcert[J].M2Presswire,2022.ArtistesJoinClimateActivistsinMultipleConcertsandActionsAcrossAfrica,toOpposeEastAfricanCrudeOilPipeline(EACOP),PutTotalEnergiesanditsFinanciersontheSpot[J].M2Presswire,2022.WorldMusicBandFiveTenSettoPerform"SpringintoWorldMusic"ConcertatTheSoundRoom[J].M2Presswire,2022.JAZZINTHEROUND-BENEFITCONCERTFORUKRAINEMARCH12TH[J].M2Presswire,2022.ShartyBGearsuptoStreamtheMegaMusicConcertonFebruary27th2022[J].M2Presswire,2022附錄packagecom.controller;importjava.util.Arrays;importjava.util.Calendar;importjava.util.Date;importjava.util.Map;importjavax.servlet.http.HttpServletRequest;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.GetMapping;importorg.springframework.web.bind.annotation.PathVariable;importorg.springframework.web.bind.annotation.PostMapping;importorg.springframework.web.bind.annotation.RequestBody;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RequestParam;importorg.springframework.web.bind.annotation.ResponseBody;importorg.springframework.web.bind.annotation.RestController;importcom.annotation.IgnoreAuth;importcom.baomidou.mybatisplus.mapper.EntityWrapper;importcom.entity.TokenEntity;importcom.entity.UsersEntity;importcom.service.TokenService;importcom.service.UsersService;importcom.utils.CommonUtil;importcom.utils.MPUtil;importcom.utils.PageUtils;importcom.utils.R;importcom.utils.ValidatorUtils;/***登錄相關(guān)*/@RequestMapping("users")@RestControllerpublicclassUsersController{ @Autowired privateUsersServiceuserService; @Autowired privateTokenServicetokenService; /** *登錄 */ @IgnoreAuth @PostMapping(value="/login") publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){ UsersEntityuser=userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",username)); if(user==null||!user.getPassword().equals(password)){ returnR.error("賬號(hào)或密碼不正確"); } Stringtoken=tokenService.generateToken(user.getId(),username,"users",user.getRole()); returnR.ok().put("token",token); } /** *注冊(cè) */ @IgnoreAuth @PostMapping(value="/register") publicRregister(@RequestBodyUsersEntityuser){// ValidatorUtils.validateEntity(user); if(userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",user.getUsername()))!=null){ returnR.error("用戶已存在"); }userService.insert(user);returnR.ok();} /** *退出 */ @GetMapping(value="logout") publicRlogout(HttpServletRequestrequest){ request.getSession().invalidate(); returnR.ok("退出成功"); } /***密碼重置*/@IgnoreAuth @RequestMapping(value="/resetPass")publicRresetPass(Stringusername,HttpServletRequestrequest){ UsersEntityuser=userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",username)); if(user==null){ returnR.error("賬號(hào)不存在"); } user.setPassword("123456");userService.update(user,null);returnR.ok("密碼已重置為:123456");} /***列表*/@RequestMapping("/page")publicRpage(@RequestParamMap<String,Object>params,UsersEntityuser){EntityWrapper<UsersEntity>ew=newEntityWrapper<UsersEntity>(); PageUtilspage=userService.queryPage(params,MPUtil.sort(MPUtil.between(MPUtil.allLike(ew,user),params),params));returnR.ok().put("data",page);} /***列表*/@RequestMapping("/list")publicRlist(UsersEntityuser){ EntityWrapper<UsersEntity>ew=newEntityWrapper<UsersEntity>(); ew.allEq(MPUtil.allEQMapPre(user,"user"));returnR.ok().put("data",userService.selectListView(ew));}/***信息*/@RequestMapping("/info/{id}")publicRinfo(@PathVariable("id")Stringid){UsersEntityuser=userService.selectById(id);returnR.ok().put("data",user);}/***獲取用戶的session用戶信息*/@RequestMapping("/session")publicRgetCurrUser(HttpServletRequestrequest){ Longid=(Long)request.getSession().getAttribute("userId");UsersEntityuser=userService.selectById(id);returnR.ok().put("data",user);}/***保存*/@PostMapping("/save")publicRsave(@RequestBodyUsersEntityuser){// ValidatorUtils.validateEntity(user); if(userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",user.getUsername()))!=null){ returnR.error("用戶已存在"); }userService.insert(user);returnR.ok();}/***修改*/@RequestMapping("/update")publicRupdate(@RequestBodyUsersEntityuser){//ValidatorUtils.validateEntity(user); UsersEntityu=userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",user.getUsername())); if(u!=null&&u.getId()!=user.getId()&&u.getUsername().equals(user.getUsername())){ returnR.error("用戶名已存在。"); }userService.updateById(user);//全部更新returnR.ok();}/***刪除*/@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){userService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}}packagecom.controller;importjava.text.SimpleDateFormat;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.Calendar;importjava.util.Map;importjava.util.HashMap;importjava.util.Iterator;importjava.util.Date;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importcom.utils.ValidatorUtils;importmons.lang3.StringUtils;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.transaction.annotation.Transactional;importorg.springframework.format.annotation.DateTimeFormat;importorg.springframework.web.bind.annotation.PathVariable;importorg.springframework.web.bind.annotation.Request

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論