摘要
互聯網技術的成熟和普及,勢必會給人們的生活方式帶來不同程度的改變。越來越多的經營模式中都少不了線上運營,互聯網正強力推動著社會和經濟發展。國人對民族文化的自信和不同文化的包容,再加上電影行業的發展,如此繁榮吸引了越多越多的人觀影。可以讓選擇觀影的用戶享受到更好的購票觀影體驗,解決線下購票的繁瑣過程,線上購票無疑是直擊痛點的解決方案。一套完備的電影網絡購票系統可以實現讓用戶又快又準找到自己喜歡的影片,一鍵購票、無痛取票,同時也是從側面促使電影經濟的穩定發展。 本設計采用Java、CSS等前端技術完成前端頁面設計,采用Spring Boot框架、MySQL整合完成后臺設計,不光方便用戶購買電影票,還讓管理員對整個影院的管理。本文首先闡述整個電影網絡購票的背景,然后對系統的需求分析,給出整個系統的概要設計和數據庫設計,最后展示電影分類管理系統的實現。
緒 論
1.1 課題背景、目的及意義 1.1.1 課題背景 從互聯網誕生之初被視為一種技術,到逐步呈現出媒體屬性,社交屬性、意識形態屬性。網絡空間與我們生活息息相關。電影行業中充分體現了“互聯網+電影”的戰略思想。 據中國電影數據信息網數據顯示,受全球疫情的蔓延對電影產業帶來了巨大的沖擊,2020年中國電影票房同比下降68.2%,但當前中國防疫取得顯著成果。2021年中國電影總票房達到472.6億元,同比增長131.4%。[11]電影產業正逐步回穩復蘇,更有一系列主旋律優秀影片上映,引起觀影熱潮,給中國電影票房帶來了促進作用。自08年國內首個線上購票平臺的成立,從此打開了中國院線電影在線購票的大門,從而解放了線下實地購票排隊久的困擾。越來越多的觀影者選擇選擇網上購買電影票,網上購票意味著更加方便快速的購票體驗。綜合現如今電影網絡購票的現狀,解決了網絡購票系統在用戶體驗上的不足,放大用戶體驗的優點。我國網絡電影購票平臺的用戶體驗感依然還有進一步可提升的空間。 本文秉持著從用戶角度出發的思想觀念,切身體驗用戶瀏覽網站的全過程以及管理員對整個影院的管理需求,盡可能給用戶帶來最佳的體驗。
1.1.2 項目開發目的和意義 現如今科技的卓越發展,時代環境的大變革。人們生活變得越來越多元化,這種多元化很大程度上由互聯網科技發展引起,日新月異的互聯網讓我們實現了眾多的不可能。社會高速發展,快節奏下的高壓生活,讓人們更加注重精神層面的放松。彼時電影行業變得家喻戶曉,更多人的選擇觀影這一途徑來消解壓力,尋求更多共鳴。傳統電影院的購票方式單一且效率低,顧客需要在到達電影院后才可選擇電影,但影院條件有限無法讓顧客從多個角度了解電影。這樣就造成了觀影者選擇影片的困難。若遇到高峰時段,顧客購票的積極性還會被排隊打消。從管理人員的角度來看,一套得心應手的管理系統也是推動影院運營的好方法。綜上所述,設計本網站為將一系列問題給予解決,讓系統用戶體驗線流暢購票,在本網站中對電影詳情頁面中,用戶可以看到相關的評論和評分,可以作為是否選擇觀看本影片的參考。讓影院管理員的管理變得更加輕松簡單。
1.2本文組織結構 本文一共分為六個章節,現將每個章節的內容概要介紹如下: 第一章:介紹了該項目的課題背景和項目開發的目的和意義,以及本文的主要組織結構,為電影院管理系統的購票功能打下基石。 第二章:對系統的需求進行了分析,分不同的角色進行了功能分析和用例描述。并對系統的非功能性需求和可行性進行了描述。 第三章:主要是綜合前兩章的需求,對整個系統進行架構和功能模塊的設計。明確整個系統的結構,方便后期進一步更加清晰地完成實現。 第四章:主要是對系統的詳細設計,包含了對數據庫的設計和對系統全面的E-R圖設計。 第五章:主要選出了整個系統中較為重要的模塊實現進行流程圖、實現過程、運行截圖展示。 第六章:集中對已經實現的系統測試進行功能模塊的測試。 本文的最后是對電影購票系統設計與實現的總結。
系統需求設計
2.1 系統需求描述 系統功能需求分為用戶使用功能和系統管理功能,其中用戶包括未注冊和已注冊。
1、未注冊用戶因權限限制僅包含瀏覽查看電影信息、公告信息等內容。
2、已注冊用戶使用功能包括用戶瀏覽電影信息、公告信息,進行用戶選座、購買電影票、修改個人信息、余額充值、在線咨詢等功能。
3、系統管理功能包括管理員管理個人中心、用戶管理、電影分類管理、電影信息管理、系統管理、訂單管理等功能。
2.2功能性需求分析 根據對本網站的功能需求分析,將通過參與系統使用的四不同視角展現系統主要功能。 現在確定本系統用例模型有三種,分別是游客、注冊用戶、電影院、系統管理員。下面分別對這四個角色的功能進行描述。
2.2.1游客 游客是未注冊的用戶,他們可以瀏覽電影信息和公告信息,如需購買電影票,必須先注冊成為網站用戶。游客瀏覽本網站時,受限只可瀏覽網站的信息。進入網站首頁時可以查看公告信息、電影信息,可以點擊上方的導航欄上的電影進一步查看所有的電影。點擊任意電影會出現該電影的詳細信息,包括該電影的排片情況、選座購票、評論等。但游客僅限查看,無法評論、收藏、選座和購票。
2.2.2用戶 已在本網站注冊過的用戶是經網站合法認證的用戶。登錄網站后可以瀏覽公告信息、電影信息、購買電影票、對影片評論、收藏、進行訂單支付等。 用戶注冊登錄系統的全部功能就會對用戶全部開放,即可順暢瀏覽整個系統,網站提供了兩個入口供用戶選擇自己觀影的影片并購買。首先是通過首頁和電影信息兩個入口,點擊相應電影信息過后,會出現該電影詳細的信息,用戶選擇適合自己的排片日期后可選座購票,選定后系統統計總價錢,若未在規定時間內購票則系統將自動取消本次訂單,點擊立即支付后系統扣除相應的金額至此選座購票完畢。每完成一次購票后,系統所生成的訂單信息、余額信息會更新到個人中心中,可在個人中心中刪除本次訂單。用戶可以對電影信息進行評論,相應信息都會個人中心查看。
2.2.3系統管理員 系統管理員主要負責系統的后臺管理工作,系統管理員作為整個影院的核心人物,擁有對多種實體的不同操作權限。在用戶管理中,可以增加、編輯、刪除用戶的信息。電影信息管理中管理員可以添加新的電影信息,可以對現有的的有效性進更改或是刪除。為了防止電影信息過多編輯起來費事增加了查詢電影信息的搜索欄。電影管理中還有查看評論的功能,后臺管理員可以刪除惡意評論。訂單管理模塊,管理員可以查看所有訂單,并可以詳細的查看到此訂單的座位、場次和購買用戶的電話。?? ? 明確整個系統中三個角色不同的功能后,這四者功能數據的聯動就將整個系統緊密的連接在一起。
2.3非功能性需求分析 2.3.1系統的實用性 人們越來越依賴網絡來解決問題,該系統可在線上讓用戶隨時隨地解決購票問題。避免購票程序繁瑣、排隊時間長、選擇影片困難等問題。在界面設計上,系統的界面直觀地向用戶呈現了每個模塊的功能,且操作簡單易上手。同樣系統大眾化推廣也很簡單方便,不受限。
2.3.2系統的安全性 系統安全性,主要是針對系統使用者信息的保密工作。用戶注冊信息時的個人信息電影分類管理系統中記錄了重要用戶信息,包括用戶的個人隱私等信息,以及系統生成的一單一碼的取票碼。
2.3.3系統的穩定性 系統的穩定性著重體現在系統出現系統操時出現的冗余的情況下,統會采取相應的措施來打破現有狀態。應在開發代碼時充分考慮到各種錯誤會出現的情況,并未其設置相應處理。系統應采用穩定的操作系統、數據庫、中間件等,以保證系統的穩定性。 2.3.4系統的開放性 系統的開放性是一個系統可以廣為普及的重要條件。它需要適配不同電腦的不同系統,也就是我們所說的兼容性。系統可以實現在不同版本的Windows系統中運行。系統對瀏覽器的包容性需要很強,由于采用的B/S結構,客戶端使用瀏覽器,瀏覽器也就成為了系統運行的載體。
2.4 可行性分析 可行性分析在課題確立相對成熟的情況下,進一步深入分析系統開發完成后投入現實使用的情形中,該系統是否具備必要的條件和資源。主要從經濟、技術、可操作性三方面來分析。
2.4.1 經濟可行性 面對近幾年來,我國的經濟體系愈發成熟,經濟形式也愈發多變。線上經營模式已經被各行各業廣泛認可。大眾上網率普遍提高,網民逐漸增多。信息化傳播的時代,線上經營模式應運而生。每個行業都在拓寬網絡板圖,將自己的產品托管于網絡,由于線上模式的流轉方式的特殊性、自動化特點將節省一批管理人員的費用,只需保證數據上傳的準確性、宣傳到位借助網絡傳播從而能將產品的曝光度增加。 電影分類管理系統同樣適用于上述線上經營模式,開發成本較低但要考慮到后續宣傳、維護的費用。一個功能齊全、使用感良好的電影分類管理系統,能客觀帶動影票的票房、電影的宣傳。購票系統的可持續發展對標文娛行業的發展對標,影響較小。節約人力管理,只需要一個后臺管理員上線電影信息即可。線上購票的方式更加吸引觀影者。
2.4.2 技術可行性 本系統基于Spring Boot+Freemarker+jpa 作為系統的基本框架,有了這個框架后會讓整個系統的開發變得更加清晰,有助于編寫。將MySQL作為數據庫, 并采用B/S模式。由于Freemarker、Spring Boot功能強大,MySQL靈活易維護在開發方面具有方便快捷、使用靈活的特點,成為輕平臺開發的首選。硬件方面,硬件更新的速度越來越快,因本系統運行無特殊功能需求故硬件也無硬性要求。正常考慮用戶數據密度大時內存是否充足、服務器的響應是否靈敏。滿足以上條件即可。 2.4.3 操作可行性 該系統采用B/S結構,從而最大限度地使客戶端用戶易于操作。客戶端通過瀏覽器來訪問網站,具有很強的實用性。B/S結構服務器端回答了客戶端處理邏輯復雜的問題。B/S結構可以直接放在廣域網上運行,從而達到了控制多客戶訪問的目的體現交互性。若后續需要更新或升級功能可直接在服務器端升級,無需客戶端做任何操作。
系統工作流程圖
系統實現
用戶注冊界面圖:
用戶登錄界面圖
前臺界面圖
電影信息界面圖
后臺登錄界面圖
管理員功能界面圖
部分數據庫表
字段名稱 | 類型 | 長度 | 字段說明 | 主鍵 | 默認值 |
id | bigint | 主鍵 | 主鍵 | ||
addtime | timestamp | 創建時間 | CURRENT_TIMESTAMP | ||
dianyingmingcheng | varchar | 200 | 電影名稱 | ||
dianyingfenlei | varchar | 200 | 電影分類 | ||
dianyinghaibao | longtext | 4294967295 | 電影海報 | ||
dianyingpianduan | longtext | 4294967295 | 電影片段 | ||
daoyan | varchar | 200 | 導演 | ||
yanyuan | varchar | 200 | 演員 | ||
shangyingriqi | date | 上映日期 | |||
fangyingchangci | varchar | 200 | 放映場次 | ||
fangyingshijian | varchar | 200 | 放映時間 | ||
fangyingting | varchar | 200 | 放映廳 | ||
yingyuanmingcheng | varchar | 200 | 影院名稱 | ||
yingyuandizhi | varchar | 200 | 影院地址 | ||
dianyingjieshao | longtext | 4294967295 | 電影介紹 | ||
clicktime | datetime | 最近點擊時間 | |||
clicknum | int | 點擊次數 | 0 | ||
price | float | 價格 | |||
number | int | 座位總數 | |||
selected | longtext | 4294967295 | 已選座位[用,號隔開] |
結論
本文完成了電影分類管理系統的設計與實現,在實現之初對此課題的背景做了分析,表明此課題的可行性。為完成預期效果,先理清整個系統的需求。從功能性需求和非功能性需求兩方面著手,功能性需求分析主要從使用系統兩個不同的角色的角度來闡述整個系統的功能。另一方面時系統的非功能性的需求分析,主要針對系統開發完成后投入到實際使用的可行性問題。了解了系統的功能需求后,開始設計代碼的主要架構。之后是對系統數據庫的具體設計,清晰系統中實體有哪些他們之間的關系是什么。在對系統功能需求、設計框架有了一個全面的認知過后開始編寫代碼。完成編寫后,對系統進行測試完善漏洞實現預期效果。 設計系統中采用freemarker來更好分離前后端操作,后端采用設計mvc分層框架,用Spring Boot更好的劃分業務邏輯,采用jpa對數據進行持久化。整個系統的運行流程主要又三層來支撐。前端頁面的請求有Controller層接收,在調用Service層的接口,因為service層中存放著主要業務邏輯,需要請求數據時service層將調用DAO 層的操作數據接口,最后在通過Controller層返回在前端頁面。分清層次結構,盡可能降低每一個頁面的粘性,方便后期更改拓展。 一個完整的系統實現從0到1的跨越,由眾多的小細節匯聚而成。前期需要有計劃、有目的地了解用戶需求,根據需求合理設計系統架構、數據庫。開發一個完整的系統并非易事,需要有足夠的耐心去了解細節,抱著不斷求知的心理一磚一瓦地搭建整個系統。系統依然有需要進一步去考量和完善的地方,需要日后多多實踐體驗積累更多經驗。