摘要
随着网络科技的不断发展以及人们经济水平的逐步提高,网络技术如今已成为人们生活中不可缺少的一部分,而微信小程序是通过计算机技术,针对用户需求开发与设计,该技术尤其在各行业领域发挥了巨大的作用,有效地促进了微信小程序的民宿预订系统的发展。然而,由于用户量和需求量的增加,信息过载等问题暴露出来,为改善传统线下管理中的不足,本文将提出一微信小程序的民宿预订系统,计算机技术作为近十年来新发展起来的科技,可运用于众多领域中,尤其在微信小程序的民宿预订系统中,可有效地提升其效率。提高现下民宿预订的准确度,同时降低经济波动带来的不良影响,希望本文能对广大学者的研究提供参考。
关键词:微信小程序的民宿预订系统;springboot框架;
Abstract
With the continuous development of network technology and the gradual improvement of people's economic level, network technology has become an indispensable part of people's lives. WeChat mini programs are developed and designed based on user needs through computer technology. This technology has played a huge role in various industries, effectively promoting the development of WeChat mini program homestay booking systems. However, due to the increase in user and demand, problems such as information overload have been exposed. In order to improve the shortcomings of traditional offline management, this article will propose a homestay booking system using WeChat mini programs. Computer technology, as a newly developed technology in the past decade, can be applied in many fields, especially in the homestay booking system using WeChat mini programs, which can effectively improve its efficiency. Improving the accuracy of current homestay bookings while reducing the adverse effects of economic fluctuations, we hope this article can provide reference for the research of scholars.
Keywords: Homestay booking system for WeChat mini program; Springboot framework;
目 录
1 绪 论
-
- 研究背景
现在,各种各样的智能手机都出现了,各种各样的软件都是以手机为基础的,而在这么多的通讯软件中,小程序是最受欢迎的。这几年来,由于微信的迅猛发展带动着小程序的发展速度也发生了很大的变化,用户也越来越多了,现在随着智能手机的普及,每个人的手机上都安装了微信,这样子基本上我们每个人的手上就都有了小程序。“互联网+”民宿预订系统快速发展的当下,微信小程序以“用完即走”的设计理念在微信小程序的民宿预订系统拥有了越来越多的客户群[2]
随着时代的发展和需求的不断提高,应对的数据量将越来越庞大,数据结构也会越来越复杂,学术界和商界都积极的地想要开发出信息管理系统来解决这些问题,给用户带来更好的体验。因此本文所提出的微信小程序的民宿预订系统具有实际意义,可提高效率,减少不必要的人力财力的损失,具有一定的现实意义[2]。
1.2 研究目的和意义
1.2.1 研究的目的
随着网络的不断发展,互联网技术渐渐成为人们生活中重要的一部分,国家的经济也被其牵动。但近年来,一些网络平台,由于用户量迅速扩增,导致传统的线下管理方式难以满足人们的需求,为保证用户体验感,本文根据Java语言,SpringBoot 框架,微信开发者,以及MYSQL等技术的支持下共同完成了该系统的开发,用以解决信息过载、不够精准等问题。具有更好的效果,降低复杂度和运行成本[3]。
1.2.2 研究的意义
“互联网”的高速发展,使得我国的国际影响力显著增强,不仅使得经济得到发展,人们的生活也发生了巨大的改变。信息化的建设成为了各行业的发展基石以及重要组成部分,如果仍然使用传统的线下管理方式,如何让用户选择合适和所需的民宿预订系统是一个迫在眉睫的问题。此时,微信小程序的民宿预订系统的研究尤为重要。微信小程序的民宿预订系统不仅能提升用户的满意度,还可以使将来研究的数据更加准确。综上,研究管理系统意义重大。
本文的微信小程序的民宿预订系统致力于研究更丰富的语义关系,将它们整合为一体,可大大提升信息的准确率[4]。
1.3 研究的主要内容
通过对知识内容的学习研究,进而设计并实现一个微信小程序的民宿预订系统。系统能实现的主要功能应包括;公告信息、民宿房间、订单信息、在线留言等的一些操作,传统的管理模式主要是使用纸作为介质,信息交流很大程度上受地域的影响,在当今信息技术发达的现状下,完全无法满足高效率的,快节奏的现代工作生活的需要。现代化网络管理模式主要是利用网络技术,将传统的以纸作为介质的信息资源保存到网络数据库中,在需要用到的时候直接通过网络到数据库中获取,无论何时何地都不受影响,完全满足现代工作生活的高效率的需求[5]。
1.4 问题定义
问题定义也是软件开发中一个重要的环节,在这个阶段我们要清楚的找到以下问题的答案:开发这个系统的原因是什么,开发这个系统所需要的具备什么样的技术支持,需要获得什么样的物资基础等。微信小程序的民宿预订系统就可以很好的促进微信小程序的民宿预订系统管理工作的完成、而且可以使整体管理水平得到有效的提升。因为使用该系统的主要是用户、房东以及管理员,所以要准确的进行角色的定位,然后对不同的角色给予不同的使用权限。
2.1 Java语言
Java 最大的两个特点就是功能强大和简单易用。Java可以让程序员进行复杂的编程而不必为储存管理对象等问题所烦恼,把精力和时间更多的放在研发与设计上,极大地提高了开发者的工作效率和工作热情。
2.2微信开发者工具
目前腾讯发布的微信官方网站上所使用的软件开发工具主要是微信开发工具,并且有官方网站为它提供了一个前端开发平台。由于软件不能在浏览器上运行,因此在网络上是不允许使用 Document,Window等方法的。而在以往对HTML5进行加载的过程中,会受到网络环境的限制,需要对HTML、CSS以及JS进行一步又一步的加载,然后返回信息,从而渲染页面,将其在浏览器当中进行呈现。这样的方式用户需要等待许久,而且会降低用户的体验感。微信Web开发者工具与H5开发工具的预览模式存在着一定的差异,其属于一项自己的工具,因此可有效地实现同步本地文件开发和调试等流程。此外小程序开发了相关的标签语言和样式语言,并没有使用相关的HTML5+CSS3。在微信小程序软件的开发过程中,还进一步提供了原生APP的组件。而在HTML5+CSS3当中,这是需要通过模拟才能够有效实现的相关功能,但在小程序当中可以通过组件来得到有效的实现。
2.3小程序目录结构以及框架介绍
- 目录结构
一个小程序主体部分由三个文件组成,必须放在项目的根目录。小程序主体组成如表2-1。
文件 | 必需 | 作用 |
app.js | 是 | 小程序逻辑 |
app.json | 是 | 小程序公共配置 |
app.wxss | 否 | 小程序公共样式表 |
表2-1 小程序主体组成
一个小程序页面由四个文件组成。小程序页面组成如表2-2。
文件类型 | 必需 | 作用 |
js | 是 | 页面逻辑 |
wxml | 是 | 页面结构 |
json | 否 | 页面配置 |
wxss | 否 | 页面样式表 |
表2-2 小程序页面组成
- 框架
整个小程序架构由两个部分组成:逻辑层和视图层。小程序还提供了 WXML和 WXSS的视图层描述语言,并在此基础上构建了一个基于 JavaScript的逻辑层,并在视图层和逻辑层之间设置了数据传递和事件处理,使得开发者可以集中精力在数据和逻辑上。微信小程序的结构,如图2-3所示。
- 逻辑层 App Service
我们所说的逻辑层Service,其实就是对业务流程的控制,主要由JavaScript语言来编写,具体体现在小程序中有四个功能:一、对数据进行初始化,还可以进行云端存储和云端调用。二、增加即将需要处理的逻辑事务。三、把需要进行的逻辑交易进行操作。四、变换视角,显示结果。
- 视图层 View
框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示。将逻辑层的数据反映成视图,同时将视图层的事件发送给逻辑层。
图2-3 微信小程序的结构
2.4 SpringBoot框架
该框架拥有自己独特的配置方式,网站开发人员不需要再进行大量重复的样板 式的配置工作,开箱即用,不会生成额外代码量,不需要进行XML文件的配置。
2.5 MySQL数据库
MySQL 是一种关联数据库管理系统,该系统速度快而且灵活性强,主要原因是它将数据保存在不同的表中,MySQL软件的优点是成本低、体积小、速度快,开放源码,所以一般中小型网站的开发都选择 MySQL 作为网站数据库。
3 可行性研究与需求分析
3.1可行性分析
民宿预订系统在社会中都广泛存在,微信小程序的民宿预订系统是不可或缺的一部分,对微信小程序的民宿预订系统的可行性分析基于当下的互联网背景,从经济、市场、技术、法律和用户使用上进行了调查,从此验证次系统开发的可行性。下面分别从以下几点进行分析:
3.1.1经济可行性分析:此次微信小程序的民宿预订系统所用的框架技术完全是开源的,其余的软件使用也都是免费的,在开发方面所消耗的成本可以忽略不计。而购置设备的费用远远少于其带来的社会收益,从经济上分析开发微信小程序的民宿预订系统是完全可行的[6]。
3.1.2市场可行性分析:民宿预订系统作为非盈利性的系统,其职能在方便用户。图书馆作为承载知识的载体,社会都有不计其数的图书馆,而微信小程序的民宿预订系统需要图书馆的支撑,自然在市场上可行[7]。
3.1.3技术可行性分析:对系统进行分析,微信小程序的民宿预订系统的大部分功能都需要管理员完成,微信开发者工具其中的Java系统只需要添加少量代码就可以很好适配管理员功能。Java的模板可以提高HTML文件的复用率,提高效率。在数据库方面,ORM简化了表的创建和使用,采用了Oracle旗下开源的关系型数据管理系统MySQL,多表存储的特点使数据更加规范化,增删改查更容易。综上所述,技术开发上并无太大的难点[8]。
3.1.4用户使用可行性分析:鉴于系统的使用用户为高校学生,有统一的学
号和一定的知识水平,且系统无需用户有过多的操作,界面清晰简洁,用户使用可行性上无问题。
3.1.5法律可行性分析:本应用的开发内容均在法律范围内得到支持,并已经通过备案[9]。
3.2 需求分析
需求分析,也称为软件需求分析、系统需求分析或需求分析工程,是指开发人员经过充分的研究和分析,准确地理解用户和项目在功能、性能、可靠性等方面的具体需求,并将用户的非正式需求表述转化为确定系统必须执行的需求的完整定义的过程[10]。
3.3网站功能分析
功能需求分析是系统设计的前提,它要求开发者和用户定义开发什么样的体系和系统需要什么样的功能。本文主要介绍了一种基于windows平台实现的微信小程序的民宿预订系统。该系统为用户提供了更安全、更高效、更便捷的途径。本系统有三个角色:管理员、房东服务端和用户微信端,要求具备以下功能:
(a) 管理员;管理员使用本系统涉到的功能主要有:系统首页、个人中心、用户管理、房东管理、公告信息管理、房间类型管理、民宿房间管理、订单信息管理、在线留言、论坛管理、系统管理等功能。管理员用例图如图3-1所示。
图3-1 管理员用例图
(b) 房东;房东使用本系统涉到的功能主要有:系统首页、个人中心、民宿房间管理、订单信息管理等功能。房东用例图如图3-2所示。
图3-2 房东用例图
(c) 用户;进入系统可以实现首页、公告信息、民宿房间、论坛、我的等功能进行操作。用户用例图如图3-3所示。
3.4系统流程设计
3.4.1 系统开发流程
微信小程序的民宿预订系统的设计和开发,首先要对用户的实际使用需求和具体情况进行细致的分析,分析出系统要完成的全部功能,然后再针对整个系统的工作流程和功能进行设计,力求每个模块都能够达到用户的要求,最后通过测试来解决问题,保证系统的稳定和正常的运转,本系统的开发流程如图3-4所示。
图3-4系统开发流程图
3.4.2 用户登录流程
登录流程实现了管理员和其他用户的登录,在登录页面需要用户填写自己的信息,前端页面会将信息传递给后端接口,然后查询数据库确定该身份有效后登录成功,否则此用户登录失败,需要重新填写信息,进行再次验证,如图3-5所示。
图3-5登录流程图
3.4.3 系统操作流程
系统操作流程分析是软件开发过程中的一个关键环节,它是整个系统整体的运行过程,必须保证其中的每一个步骤都是确定的,这样一个规范的流程图可以使开发者易于理解,快速的投入到接口开发中,从而提升系统开发效率。
同时,流程图还能减少开发者对系统操作流程产生歧义和降低沟通的成本,系统操作流程如图3-5所示。
4 软件功能模块设计
微信小程序的民宿预订系统采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块[11]。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。 网站总体功能如下图所示:
图 4-1 微信小程序的民宿预订系统总体功能模块图
4.1 数据库设计与实现
在每一个系统中数据库有着非常重要的作用,数据库的设计得好将会增加系统的效率以及系统各逻辑功能的实现。所以数据库的设计我们要从系统的实际需要出发,才能使其更为完美的符合系统功能的实现。
4.1.1 概念模型设计
概念模型是对现实中的问题出现的事物的进行描述,ER图是由实体及其关系构成的图,通过E-R图可以清楚地描述系统涉及到的实体之间的相互关系。
公告信息实体图如图4-2所示:
图4-2公告信息实体图
用户信息实体图如图4-3所示:
图4-3用户信息实体图
房东信息实体图如图4-4所示:
图4-4房东信息实体图
民宿房间实体图如图4-5所示:
图4-5民宿房间实体图
根据E-R得出数据库包涵了以下几张数据表来实现了对数据库的存储、
调用。
表4-1:论坛表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 帖子标题 | ||
content | longtext | 4294967295 | 帖子内容 | ||
parentid | bigint | 父节点id | |||
userid | bigint | 用户id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
isdone | varchar | 200 | 状态 |
表4-2:房间类型
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
fangjianleixing | varchar | 200 | 房间类型 |
表4-3:房东
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
zhanghao | varchar | 200 | 账号 | ||
mima | varchar | 200 | 密码 | ||
fangdongxingming | varchar | 200 | 房东姓名 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
nianling | int | 年龄 | |||
shenfenzheng | varchar | 200 | 身份证 | ||
dianhua | varchar | 200 | 电话 |
表4-4:民宿房间评论表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
refid | bigint | 关联表id | |||
userid | bigint | 用户id | |||
avatarurl | longtext | 4294967295 | 头像 | ||
nickname | varchar | 200 | 用户名 | ||
content | longtext | 4294967295 | 评论内容 | ||
reply | longtext | 4294967295 | 回复内容 |
表4-5:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-6:订单信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
dingdanbianhao | varchar | 200 | 订单编号 | ||
minsumingcheng | varchar | 200 | 民宿名称 | ||
fangjianleixing | varchar | 200 | 房间类型 | ||
tupian | longtext | 4294967295 | 图片 | ||
zhanghao | varchar | 200 | 账号 | ||
jiage | double | 价格 | |||
yuyuetianshu | int | 预约天数 | |||
fangjianshu | int | 预定数量 | |||
zongjiage | double | 总价格 | |||
beizhu | varchar | 200 | 备注 | ||
ruzhushijian | datetime | 入住时间 | |||
yonghuming | varchar | 200 | 用户名 | ||
xingming | varchar | 200 | 姓名 | ||
shenfenzheng | varchar | 200 | 身份证 | ||
shouji | varchar | 200 | 手机 | ||
yuyueshijian | date | 预约时间 | |||
sfsh | varchar | 200 | 是否审核 | 待审核 | |
shhf | longtext | 4294967295 | 审核回复 | ||
ispay | varchar | 200 | 是否支付 | 未支付 |
表4-7:用户
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yonghuming | varchar | 200 | 用户名 | ||
mima | varchar | 200 | 密码 | ||
xingming | varchar | 200 | 姓名 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
nianling | int | 年龄 | |||
shenfenzheng | varchar | 200 | 身份证 | ||
shouji | varchar | 200 | 手机 |
表4-8:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-9:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 |
表4-10:关于我们
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
title | varchar | 200 | 标题 | ||
subtitle | varchar | 200 | 副标题 | ||
content | longtext | 4294967295 | 内容 | ||
picture1 | longtext | 4294967295 | 图片1 | ||
picture2 | longtext | 4294967295 | 图片2 | ||
picture3 | longtext | 4294967295 | 图片3 |
表4-11:在线客服
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
adminid | bigint | 管理员id | |||
ask | longtext | 4294967295 | 提问 | ||
reply | longtext | 4294967295 | 回复 | ||
isreply | int | 是否回复 |
表4-12:收藏表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 用户id | |||
refid | bigint | 商品id | |||
tablename | varchar | 200 | 表名 | ||
name | varchar | 200 | 名称 | ||
picture | longtext | 4294967295 | 图片 | ||
type | varchar | 200 | 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) | 1 | |
inteltype | varchar | 200 | 推荐类型 | ||
remark | varchar | 200 | 备注 |
表4-13:民宿房间
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
minsumingcheng | varchar | 200 | 民宿名称 | ||
fangjianleixing | varchar | 200 | 房间类型 | ||
tupian | longtext | 4294967295 | 图片 | ||
chengshi | varchar | 200 | 城市 | ||
mianji | varchar | 200 | 面积 | ||
jiage | double | 价格 | |||
fangjianshu | int | 房间数 | |||
fangjianshipin | longtext | 4294967295 | 房间视频 | ||
zhanghao | varchar | 200 | 账号 | ||
fangdongxingming | varchar | 200 | 房东姓名 | ||
dianhua | varchar | 200 | 联系电话 | ||
xiangxidizhi | varchar | 200 | 详细地址 | ||
fangjianxiangqing | longtext | 4294967295 | 房间详情 | ||
clicktime | datetime | 最近点击时间 |
表4-14:在线留言
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
userid | bigint | 留言人id | |||
username | varchar | 200 | 用户名 | ||
avatarurl | longtext | 4294967295 | 头像 | ||
content | longtext | 4294967295 | 留言内容 | ||
cpicture | longtext | 4294967295 | 留言图片 | ||
reply | longtext | 4294967295 | 回复内容 | ||
rpicture | longtext | 4294967295 | 回复图片 |
表4-15:公告信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
biaoti | varchar | 200 | 标题 | ||
leixing | varchar | 200 | 类型 | ||
tupian | longtext | 4294967295 | 图片 | ||
gonggaoneirong | longtext | 4294967295 | 公告内容 | ||
faburiqi | date | 发布日期 | |||
clicktime | datetime | 最近点击时间 | |||
clicknum | int | 点击次数 | 0 |
或:源码\ /
文心海资源库