基于Spring Boot的购票系统的设计与实现
2023-04-29赵凝
赵凝
摘要:基于Spring Boot的购票系统的设计与实现,旨在借助互联网技术为用户提供文娱演出和体育赛事类商品线上购票的服务。演出赛事购票平台是综合类娱乐票务在线整合营销平台,业务覆盖演唱会,话剧,歌剧,音乐剧,体育赛事等领域。系统采用前后端分离架构设计,前端采用Vue框架,结合HTML5、CSS3、Axios、JSON等技术进行前端代码的编写;使用Photoshop、Figma、StarUML进行原型图和数据库设计;服务器端采用Spring Boot框架搭建并提供API接口,使用MyBatis框架,结合MySQL数据库进行数据的存储与访问。
关键词:Spring Boot;购票系统;MySQL;Vue
一、前言
近年来,以计算机技术、网络技术和多媒体技术为代表的信息技术革命已经深入社会各个层面,并且逐渐改变着人们的生活方式。各种娱乐型票务系统也渐渐走进大众的视野。线上购票在给用户带来极大便利的同时,也为演出赛事的举办方提供了极大的便利。举办方可以通过后端系统统计销售的票数,既节省了人力,又节省了物力。此外,演出赛事购票平台可对各大音乐节,各体育赛事,京剧、话剧演出等进行宣传和售票。基于此,本文设计并开发了基于Spring Boot的购票平台。
二、购票系统的目的和意义
演出赛事购票平台是对小众文化、传统文化的宣传,也是对购票模式的创新,其主要目标是实现演唱会、音乐会、话剧、体育比赛等多种门票在线订购服务。此外,网站致力于让更多的人了解一些小众文化或中国传统文化。
随着社会经济的不断发展,人们的娱乐活动越来越丰富,种类越来越多,观看各类演出、各种比赛的人数占比很大。用户可以通过本平台查看所有的演出和比赛信息。网站提供给用户不同的选择,让用户实现足不出户,进行在线订票、退票等操作。这样既可以省时省力,又能及时收到更多的演出信息。
在移动互联网与电子商务快速发展的背景下,网络购票无疑成为一种新的购票模式,O2O(Online To Offline)模式也应运而生。O2O模式是指消费者在线上进行交易支付,再到线下享受服务的过程[1]。演出赛事购票平台便是在O2O的基础上,实现用户线上购票、线下观看演出活动的过程。此外,演出赛事购票平台可以跟踪网络购票业务流程,实现购票平台业务的多元化整合营销。近年来,在线票务服务业发展迅猛,O2O模式的出现和发展促使上游供应商为客户提供创新产品,激发了行业整体潜力。然而,随着人口红利时代的逐渐远去,在线票务服务企业要想获得长远发展,就要跟上互联网时代的步伐,转变其盈利模式[2]。
三、系统的可行性分析
(一)技术可行性分析
本系统基于Vscode开发平台,在设计之初使用了Photoshop、Figma等绘图工具绘制网站原型和logo;使用Google浏览器和Firefox浏览器检查代码效果;使用了Vue框架,结合ElementUI组件库进行前端页面的搭建。Vue核心库只关注可视化层,使用方便,而且很容易与第三方库或现有项目集成[3]。ElementUI遵循用户习惯的语言和概念,通过界面样式和交互动画效果,让用户可以清晰感知自己的操作,设计简洁直观的操作流程,可以让用户自由地操作[4]。本系统使用Spring Boot结合Mybasis框架进行后端数据存储。Spring Boot用来简化新Spring应用的初始搭建和开发过程。它简化了开发过程、配置过程、部署过程和监控过程[5]。当前计算机的硬件及软件均满足开发需求,所有平台均安全且可正常执行,因此满足技术可行性。
(二)安全可行性分析
对于网站的安全,可以从运行环境与网站程序自身两个方面来分析。
1.网站运行环境安全主要包括物理安全和软件本身的安全。物理安全是指软件因外力等造成损害,比如机械的撞击以及其他自然因素;软件本身的安全是指操作系统、服务器及数据库本身的安全。
2.对于网站程序自身的安全,应该从以下方面考虑:首先,网站配置路由拦截并要求登录用户的输入都应是合法的,非法输入的用户禁止登录本网站,游客不可查看个人中心等需登录的页面;其次,网站保护用户的隐私,用户的密码只有管理员可见,网站的代码、组件均安全可靠;最后,从严格意义上讲,测试是不可能发现所有问题的,所以还需要对网站进行后续的管理、维护以及测试。
(三)社会可行性分析
一直以来,演出市场以一二线城市为主,一线城市演出比例持续增加,越来越多的歌手开始准备音乐节和演唱会,国内演出市场年均增长率持续上涨。
此外,通过调研报告得知,演出票房近年来呈上涨趋势,虽然许多演出采取了线上模式或演出限流模式,但在票务网上有时仍然一票难求,例如,在2022年5月5日举行的地下八英里全国总决赛,售票通道刚开启,学生票就被抢光。根据预测,演出市场将会有更大的需求量和发展空间。
四、系统需求与设计
(一)系统用例概述
1.项目功能需求分析
对同一类型的产品进行调研,根据需求分析的结果,确定本软件主要包括以下功能模块:
(1)前端功能需求:首页包括票务展示以及票务详情,演唱会页面包括总票代信息,音乐人页面包括音乐人动态和推荐,歌手详情页包括演出信息等。
(2)后端功能需求:后台首页展示个人信息、购买菜单和图表;用户管理页包括用户信息的增、删、改、查;粉丝管理包括粉丝新增和评论查看;演出信息包括场地入驻、音乐人入驻、发布音乐和厂牌入驻;票务管理包括人工协助、结款到账、票务分类以及退票管理等。
2.前台用户的功能需求分析
根据需求调研,本系统的目的是为用户和演艺部门提供一个交互平台。它可以为用户提供演唱会、话剧、歌剧、体育赛事、音乐节等演出信息,方便用户及时进行购票、退票等操作。主要功能有:显示所有在线票务信息,能进行登录、注册、购票等操作,显示演唱会会馆具体地址。普通用户用例图如图1所示。
3.后端用户功能需求分析
根据需求分析,本系统为管理员提供了登录、用户管理、粉丝管理、查看演出信息以及票务管理等功能。其中,后端只有管理员可以登录,非管理员登录会被系统拦截;在用户管理中,管理员可以对用户信息进行增、删、改、查操作,对用户信息进行维护;在查看演出信息功能中,管理员可以根据实时情况发布演出信息、调整场地分配,对音乐人进行管理;在厂牌管理中,管理员可以对厂牌信息进行增、删、改、查操作;在票务管理功能中,管理员可以进行票务统计、票据分类、退款到账、结款到账、人工协助等操作。后端管理员用例图如图2所示。
后端具体功能和功能描述如表1所示。
(二)体系结构设计
用户和管理员通过前端页面的交互,浏览通过后端数据库返回的数据以及页面信息。
(三)网站设计规范
1.本网站主要使用的是三列布局和居中布局。
2.网站设计
网站前端展示页面是面向用户和消费者的,为To C端;后台是面对商家和专业人士的,为To B端。
3.网页设计
网页宽度为1520px,高度不限,有效可视区的宽度为950px~2000px。
4.字体规范
中英文常用字体:微软雅黑。
5.文字常用字号
导航文字大小:17px;
正文内容:12px、14px、15px、20px;
标题、小标题:20px、22px;
辅助信息:12px、13px、20px。
6.字体间距
相邻两个文字的间距、行间距,使用字体大小的1.5~2.0倍作为参考。
7.字体颜色
字体的主要颜色为黑色和深灰色,大部分采用红色或白色,辅助信息为灰色。
(四)布局设计
页面布局指的是页面信息结构布局方案,即页面中的元素如何展示给用户。对于产品而言,页面的布局方案非常重要,一个合理的页面布局方案,能为用户提供更好的产品体验,让用户在使用时清晰明了,进而为产品带来更多的正向数据。
影响页面布局的因素有很多,如产品目标需求、用户需求等。其中,页面与用户之间的交互、页面布局的评估、页面布局的设计思路非常重要。
本网站布局通过对页面进行初步评估,理清了页面布局设计的整体思路。本网站应用了四种页面布局方式,分别为:banner式布局(导航条和banner图);上下型布局(主要内容、页脚);左右型布局(后台管理系统);标题正文型布局(图文混排)。
颜色搭配:红色、蓝色、黄色。蓝色和红色属于对比色,蓝色的沉静、稳重搭配红色的热情、艳丽,形成了强烈的对比,并使各自的色相更显突出,具有强烈的视觉冲击力。
(五)数据库设计
根据对系统功能模块的描述,该系统的数据库中应该具有如下信息:
1.用户的基本信息包括账号、密码、姓名、年龄、性别、出生日期和地址。
2.管理员的信息包括管理员编号、级别、姓名、性别、联系方式。
3.歌手的基本信息包括歌手编号、姓名、性别、演出、邮箱。
4.演出包括演唱会、歌剧话剧、体育、音乐节、音乐会。
5.演职员信息包括姓名、演出时间、演出地址、演出场馆。
6.演出信息包括音乐人入驻、厂牌入驻、发布音乐、场地入驻。
7.粉丝管理包括查看粉丝人数、查看评论、粉丝新增。
8.票务管理包括人工协助、退票管理、结款到账、票据分类。
五、系统功能设计与实现
(一)歌手页面功能的设计与实现
歌手页面介绍了歌手的基本信息,该页面使用Tab选项卡记录演出、场地、作品、简介、专辑等模块。其中,演出模块包括歌手近期将出席的演出活动以及活动的价格、时间、地址等信息,点击地图图标可以通过百度地图接口跳转到对应的位置。场地模块记录了歌手参加演出的场地环境。在作品模块中,可以收听歌手的作品,歌曲可以倍速播放,可以随时暂停,可以下载保存至本地。
(二)后端管理功能模块设计
后端首页使用了Echart图表进行详细的数据分析。Echart图表可以把数据用图表的形式清晰显示出来。首页使用的图表形式包括折线图、柱状图和饼状图等。图表和列表中的数据存储在数据库中,通过GetData方法获取数据库中的数据。用户列表页可以实现对用户信息的增加、编辑、删除和查找。
六、基本功能测试
系统制作完成后,对本系统进行了功能测试。基本功能测试如表2所示。
七、结语
本购票系统,服务器端使用Spring Boot框架、MyBatis结合MySQL数据库进行开发,前端使用Vue进行构建。截至目前,该项目的前后端均已完成相关功能的开发和实现,系统包括演出信息和票务管理。
前端页面实现了对各种演出信息的查看以及购票操作,后端页面实现了对粉丝数据以及演出信息发布的数据修改和对用户信息的增加、删除、修改、查看等操作。
参考文献
[1]刘楠.O2O经营模式分析[D].天津:天津大学,2016.
[2]云婷.价值链视角下在线票务服务企业O2O盈利模式研究——以携程网为例[D].呼和浩特:内蒙古农业大学,2021.
[3]齐洋,原变青,刘颖,等.基于Gin和Vue.js的作业管理系统的设计[J].信息技术与信息化,2022(10):103-105+110.
[4]王志文.Vue+Elementui+Echarts在项目管理平台中的应用[J].山西科技,2020,35(6):45-47.
[5]王丹,孙晓宇,杨路斌,等.基于SpringBoot的软件统计分析系统设计与实现[J].软件工程.2019,22(3):40-42.
作者单位:大连东软信息学院计算机科学与技术系