基于SaaS 的文广会展平台设计与实现
2023-11-27苏海墩
苏海墩
(厦门文广实业有限公司,福建厦门 361005)
近年来,文化活动在人民生活中的作用越发受到重视。国家认真落实推动了一系列措施的实行,如《文化产业振兴规划》的实施,发布实施《文化部“十二五”时期文化产业倍增计划》和《“十二五”时期国家动漫产业发展规划》等[1]。国家相关科技发展规划和计划均将数字文化产业的发展纳入其中。与此同时,文广会展业也越发壮大。
会展业随着人民文娱生活的日益丰富,成为了国家充分建设社会主义文化强国的主要平台,是社会主义精神文明建设的力量源泉[2]。近年来,会展举办数量在全国呈递增趋势,对我国文化软实力的提升起了极大的助推作用。会展业涉及方方面面,包括上下游组织、参展商管理、展位安排和大数据分析等许多内容。传统的人工与手动办展方式已经越来越难以满足需求。大型会展信息化解决方案,是进一步提高会展业信息化服务与管理水平的重中之重。
当前会展信息化管理系统还停留在初级阶段,系统结构混乱、缺乏数据挖掘功能、展商互动匮乏[3]。针对以上问题,本平台设计了一款以文广活动为主体的会展业务管理系统,结合Java EE 技术与微服务架构,从根本上解决了传统会展业管理复杂、业务流程繁琐、人工安排低效的问题。基于SaaS 的文广会展平台主要功能包括:①展览信息管理,包括展览名称、时间、地点、主办方和承办方等信息。②参展商信息管理,包括参展商名称、展位号、展品信息和联系方式等信息。③访客信息管理,包括访客姓名、性别、职业和联系方式等信息。④展馆信息管理,包括展馆名称、展馆面积、展馆所在地等信息。⑤统计分析功能,对展览、参展商、访客等信息进行数据挖掘、潜在信息分析,并最终通过生成报表展示。⑥展会小程序管理,用户可以通过扫码、朋友圈共享、聊天转发、小程序搜索等方式进入会展平台,非常方便快捷。通过微信独天得厚的流量优势,平台可以得到最大范围的宣传和转发,快速形成用户基础,推广迅速。
1 相关研究概念和理论:SaaS 模式、Java EE 和微服务
本系统依据SaaS 模式,采用Java EE 技术进行开发,使用Spring 框架进行项目构建,使用MySQL 数据库进行数据存储和管理。同时,使用Element Plus 和SpringBoot 技术实现前端展示和后台业务处理,使用MyBatis-Plus 技术实现与数据库的交互。系统的总体架构如图1 所示。
图1 系统架构图
1.1 SaaS 模式
SaaS 模式:全称为Software as a Service,即以服务为软件,通过出售服务的形式向用户提供软件,最大限度地满足用户服务需求[4]。SaaS 模式通常以订阅形式向用户提供不同的服务套餐,使得软件更具灵活性和可扩展性。
本系统通过虚拟业务大厅提供各种会展管理服务,免除了实地操作的繁琐流程。以此为基础,构建强大的会展管理中心,通过积累的商户资源,利用富媒体技术开展如会展直播、在线购物等多种服务形式。用户无须再购买软件,也省去了维护软件的费用。会展商户可根据实际需求,通过参展商模块租用所需要的会展管理服务,按照订购种类、服务时长和服务品质支付费用。商户无须在开展会展活动时进行一次性投入,而是通过相对低廉的套餐享受到系统完善的服务,大大减轻了经济压力。个人客户则可以通过用户模块注册会员,订购中意的套餐,获取观看会展展览、直播互动和线上打赏的服务。所有的软件操作和数据存储都由本系统提供,让用户能够更轻松地享受所订购的服务和功能。
1.2 Java EE
Java EE:Java Enterprise Edition(Java EE)是由甲骨文公司推出的,基于Java Standard Edition 的升级版本。Java EE 主要面向中大型公司的复杂服务器端的建设与搭建,推出以来受到了许多著名商业巨头的认可与支持。Java EE 平台支持多线程运行环境,适合大并发量的业务流程,为企业提供安全可靠的后端业务。业务复杂的分布式企业应用系统多以Java EE 作为后端建设架构。
1.3 Spring Boot
Spring Boot:Spring Boot 是一个开源的Java 平台网站后端搭建框架。包含控制层、视图层和服务层[5]。该框架能够帮助用户快速地建立起一整套企业Web 应用服务,同时提供了大量的扩展功能,为敏捷开发提供支持。与传统的Java Servlet 结构相比,Spring Boot 更加高效简洁,在开发者社区中受到诸多青睐。
1.4 微服务架构
微服务架构:微服务架构(通常简称为微服务)是由腾讯开发提供的一整套移动端应用开发框架[6]。微服务通过容器的形式,将大型应用拆分成更多灵活独立的组件,每个组件各自负责系统的一项功能,使得业务流程更加清晰明了。微服务帮助开发者专注于开发自己负责的模块,而无需关心复杂的业务流程。
1.5 MySQL 数据库
MySQL 数据库:MySQL 数据库是一个开源的关系数据库管理系统(RDBMS)。关系型数据库将数据组织成一个或多个数据表,表中的数据可能相互关联;这些关系有助于构建数据间的联系。系统使用MySQL 数据库存储服务数据,并采用了ORM 框架MyBatis-Plus 来操作数据库,提升了代码的可读性。为了减轻MySQL 的压力,数据存储还使用非关系型数据库Redis,进行热点数据缓存,提高业务响应能力。网络编程方面,采用Web-Socket 实现实时通信与消息推送功能。网站部署上线使用宝塔与腾讯云服务。
1.6 前端技术
My Vue 和Element Plus:My Vue 是目前十分流行的一套前端开发应用框架。该框架以灵活、简单、开放、方便与第三方库结合的特点,迅速得到许多开发人员的支持与使用。Element Plus 是一套采用Vue 3.0 作为基础框架实现的组件库,在系统开发中主要用于UI 的快速搭建,可以缩短项目开发周期。
综上所述,本研究将综合运用SaaS 模式、Java EE平台和微服务架构等相关概念和理论,构建基于SaaS 平台的文广会展管理系统,并运用爬虫算法和数据分析算法,挖掘行业特征和趋势,为今后的会展业管理工作改进与升级提供数据支持。
2 系统设计与架构
2.1 系统架构设计
本系统采用B/S 架构,前端使用Vue.js、Element Plus 和JQuery Mobile 等技术进行页面设计,后端使用Spring Boot 框架进行搭建和开发,以提高开发效率。在移动端,采用微服务架构,用户随时随地能够以快捷方便的形式进入系统,方便了系统的推广与宣传。
2.2 数据库设计
本系统使用MySQL 作为数据库管理系统,根据系统功能需求,主要设计了以下数据表:①用户信息表,存储用户的账号、邮箱、密码、用户类型等信息;②会展活动表,存储会展活动信息;③参展商表,存储参展商户的公司信息、联系电话、产品信息等;④展位表,存储展位信息;⑤订单表,存储用户消费订单信息。
2.3 模块设计
根据系统功能需求,将系统划分为以下模块,系统核心流程图如图2 所示。
图2 系统核心流程图
①用户模块,该模块主要包括用户注册、登录、手机验证、个人信息修改等功能;②会展信息模块,用于发布会展活动信息,对会展活动进行查询、修改等;③参展商模块,用于录入、修改、查询参展商户的公司信息、产品信息和联系方式等;④展位模块,展位信息的录入、修改、查询等功能于此页面完成;⑤订单模块,实现订单的创建、支付、取消、查询等功能。参展用户开源在浏览展品的同时,方便快捷地通过扫码支付的方式,下单心仪展品;⑥统计报表模块,实现会展活动统计、参展商统计、订单统计等功能;⑦展会小程序模块,实现了手机端的界面展示,包括展商报名、个人报名、品牌推荐和个人中心等功能。
3 系统实现
本章将对系统的主要功能模块进行详细的实现过程描述。
3.1 用户模块实现
用户模块主要包括用户个人信息修改、邮箱注册、短信验证等功能。前端使用Apache Shiro 等技术编写用户注册、登录、信息修改等页面,确保用户数据的安全。接着,通过Spring Boot 框架编写后端逻辑,实现用户的注册、登录、信息修改等操作。
3.2 会展信息模块实现
会展信息模块主要包括会展活动信息的发布、修改、查询等功能。首先,使用JQuery Mobile、Angular.js 等技术编写会展活动信息发布、修改、查询等页面。接着,通过MyBatis 编写后端数据操作逻辑,实现会展活动信息的发布、修改、查询等功能。
3.3 参展商模块实现
参展商模块主要包括参展商信息的录入、修改、查询等功能。使用到Vue.js 和Ajax 等技术编写参展商信息录入、修改、查询页面。后端逻辑编写则是通过Spring Boot 框架。
3.4 展位模块实现
展位模块主要包括展位信息的录入、修改、查询等功能。首先,使用JSP、CSS、JavaScript 等技术编写展位信息录入、修改、查询等页面。由于该模块数据量较大,后端使用Thrift 通信协议,实现轻量级的远程服务器调用,获取数据,完成展位信息的录入、修改、查询等操作。
3.5 订单模块实现
订单模块主要包括订单的创建、支付、取消和查询等功能。前端界面使用JSP 和Vue.js 完成,订单界面主要过程分为基础布局、数据的渲染、支付流程、等待支付和一个支付完成的展示界面。后端则通过调用微信支付提供的JSAPI 接口,在支付场景中调起微信支付模块完成收款。
3.6 统计报表模块实现
统计报表模块主要包括会展活动统计、参展商统计、订单统计等功能。前端使用Echarts 编写各类统计报表页面。接着,通过Spring Boot 框架编写后端逻辑,实现各类统计报表的生成。
3.7 小程序模块实现
小程序模块主要包括展商报名、观众报名、活动列表、资讯列表和个人中心等功能。通过微信小程序接口调用后端Spring Boot 服务器数据,在微信前端展示数据。WebView 对渲染层的界面进行渲染,JsCore 线程运行JS脚本。
4 系统测试
本系统进行了严格的软件测试,以保证系统的稳定性和可靠性。
4.1 测试环境
客户端:Windows10。
本地服务器:Tomcat(版本9.0.64)。
数据库:MySQL、Navicat Premium 15。
代码开发:IntelliJ IDEA。
4.2 测试内容
内容包括:①功能测试,测试系统各功能模块是否能够正常响应,完成用户需求;②性能测试,测试系统在高并发情况下的响应速度和稳定性;③安全测试,测试系统是否存在安全漏洞,如SQL 注入、XSS 攻击等;④兼容性测试,测试系统在不同浏览器和操作系统下的运行效率。
4.3 测试流程
针对以上测试内容,本系统设计了详细的测试方案对各功能模块进行了黑盒测试。下面以参展商模块和订单模块为例,详细介绍测试流程。测试流程见表1和表2。
表1 参展商模块测试流程
表2 订单模块测试流程
经过测试,本系统涵盖了会展业务中的主要功能,运行稳定快速,安全性较高,具备良好的扩展性与兼容性,能够满足会展管理的需求。
5 结束语
本文设计并实现了一套基于Spring Boot 框架的会展管理系统,通过对传统会展业务处理流程的分析与改良,进行了详细的需求分析和系统设计。系统采用SaaS模式,使用Java、Spring Boot、微服务等技术进行开发。系统功能完善,性能稳定,安全可靠,能够有效提升会展管理业务的效率。本系统的设计与实现为会展行业提供了一种高效、可靠的管理方案。