摘 要
在当今城市化进程加快的背景下,城市停车问题日益突出,给市民出行带来诸多不便。为解决停车难题,提高停车效率,基于Java开发语言和Spring Boot框架,结合MySQL数据库技术,开发了商圈停车泊位实时查询与推荐系统。该系统利用前端技术实现用户友好的界面设计,结合后端技术实现停车位信息的实时查询和推荐功能。通过系统,用户可以实时查询停车位信息、获取最新的停车资讯、管理个人停车记录,同时管理员可以高效管理停车位信息、发布重要的停车公告和资讯。这一智能停车管理系统的开发不仅为城市停车管理带来新的解决方案,也为城市交通运行和停车资源利用提供了创新思路,有望缓解城市停车压力,改善市民出行体验,推动城市交通智能化发展。
关键词:Java;SpringBoot框架;商圈停车泊位实时查询与推荐系统;MySQL
Abstract
In the context of accelerating urbanization, the problem of urban parking is becoming increasingly prominent, bringing many inconveniences to the travel of citizens. To solve the parking problem and improve parking efficiency, a real-time query and recommendation system for commercial parking spaces was developed based on Java development language and Spring Boot framework, combined with MySQL database technology. The system utilizes front-end technology to achieve user-friendly interface design, and combines back-end technology to achieve real-time query and recommendation functions for parking space information. Through the system, users can query parking space information in real-time, obtain the latest parking information, and manage personal parking records. At the same time, administrators can efficiently manage parking space information, issue important parking announcements and information. The development of this intelligent parking management system not only brings new solutions to urban parking management, but also provides innovative ideas for urban transportation operation and parking resource utilization. It is expected to alleviate urban parking pressure, improve the travel experience of citizens, and promote the intelligent development of urban transportation.
Keywords: Java; SpringBoot framework; Real time query and recommendation system for commercial district parking spaces; MySQL
目 录
摘 要
1 绪论
1.1 选题背景与意义
1.2国内外研究现状
1.3论文结构与章节安排
2 商圈停车泊位实时查询与推荐系统系统分析
2.1 可行性分析
2.1.1 技术可行性分析
2.1.2 经济可行性分析
2.1.3 操作可行性分析
2.2 系统功能分析
2.2.1 功能性分析
2.2.2 非功能性分析
2.3 系统用例分析
2.4 系统流程分析
2.4.1 数据增加流程
2.4.2数据修改流程
2.4.3数据删除流程
2.5本章小结
3 商圈停车泊位实时查询与推荐系统总体设计
3.1 系统功能模块设计
3.1.1整体功能模块设计
3.1.2用户模块设计
3.1.3 评论管理模块设计
3.1.4车位信息管理模块设计
3.2 数据库设计
3.2.1 数据库概念结构设计
3.2.2 数据库逻辑结构设计
3.3本章小结
4 商圈停车泊位实时查询与推荐系统详细设计与实现
4.1用户功能模块
4.1.1 前台首页界面
4.1.2 用户注册界面
4.1.3 用户登录界面
4.1.4停车公告界面
4.1.5停车资讯界面
4.1.6车位信息详情界面
4.1.7我的账户界面
4.1.8个人中心界面
4.2后台管理功能模块
4.2.1系统用户界面
4.2.2 车位信息管理界面
4.2.3 入场记录管理界面
4.2.4系统管理界面
4.2.5资源管理界面
5系统测试
5.1 系统测试的目的
5.2 测试用例
5.3 测试结果
结论
参考文献
致 谢
1 绪 论
1.1 选题背景与意义
随着城市化进程的不断加速,人口数量的不断增加,汽车保有量逐渐增多,停车成为当今城市交通中的重要问题。在繁华的商圈,停车位紧缺、停车难是常见的问题,给市民和游客出行带来不便和困扰。传统的停车查询方式通常是通过实地搜索或停车指示牌,存在信息不准确、不及时等问题。
针对商圈停车难问题,建立一个实时查询与推荐系统具有重要的实际意义。首先,该系统可以帮助市民、游客快速、准确地查找到周边商圈的停车泊位信息,从而提高停车效率,节省时间成本。其次,通过实时查询和推荐功能,可以帮助商圈停车资源得到更合理的分配和利用,减少因停车位不均衡而导致的交通拥堵和资源浪费。最后,通过引入先进的技术和算法,提高停车位的利用率和预订率,为商圈管理者提供科学决策依据,促进商圈停车管理的智能化和智慧化发展。
因此,研究商圈停车泊位实时查询与推荐系统不仅有着重要的现实意义,更有助于提升城市停车管理水平,改善城市交通环境,促进城市可持续发展。
1.2国内外研究现状
随着城市化进程的加速和汽车保有量的增加,停车成为城市交通管理中的一大难题。商业区是城市中停车需求最为集中的地区之一,商圈停车难一直是居民、司机和管理者关注的热点问题。为缓解商圈停车的问题,提升停车体验和管理效率,商圈停车泊位实时查询与推荐系统应运而生。该系统通过使用现代科技手段,结合数据挖掘和智能算法,提供停车位实时查询和推荐服务,为停车用户提供便捷的停车信息和导航,帮助减少停车寻找时间,缓解停车压力,提升停车体验和交通效率。
在国外,商圈停车泊位实时查询与推荐系统的研究和应用比较成熟。一些欧美发达国家的城市已经利用物联网技术、大数据分析和人工智能算法,建立了各种形式的商圈停车信息系统。例如,美国的智能停车平台SpotHero和ParkWhiz,英国的Parkopedia等,这些平台通过实时更新停车位信息、提供预订服务和智能推荐,帮助驾驶者快速找到空闲停车位,减少拥堵和污染。
在国内,虽然商圈停车泊位实时查询与推荐系统的研究起步较晚,但也有一些相关的研究和实践。一些互联网企业和科研机构开始尝试利用智能手机APP、GPS定位技术、云计算和人工智能算法,开发商圈停车信息查询和推荐系统。例如,高德地图、百度地图等地图应用提供了停车场实时信息和导航功能,滴滴出行也在其平台上推出了停车场预订和导航服务。
综上所述,商圈停车泊位实时查询与推荐系统在国内外都引起了研究和关注,随着科技的不断进步和应用,相信这一领域将会迎来更多创新和突破,为解决城市停车难题和改善停车体验发挥重要作用。
1.3论文结构与章节安排
本文共分为六章,章节内容安排如下:
第一章:引言,此章节将介绍论文的选题背景、研究意义以及国内外研究现状,这一部分的主要目的是引出论文的主要内容。
第二章:系统需求分析,这可谓是论文中非常重要的一部分,它涵盖了系统的功能需求、性能需求、安全需求等详细的分析。
第三章:系统的设计,这一部分作为论文的核心,主要涉及到的有系统的整体架构设计、功能模块设计,同时包括数据库设计等内容。
第四章:系统的实现,在此章节将用文字描述结合系统截图展示的方式,向大家详细介绍系统的各项功能描述,以及部分重要代码的展示。
第五章为系统测试。用测试用例来对系统的个别功能进行测试,并展示测试结果。
结论: 对整个研究工作进行了总结,并对未来的发展提出了展望。总结部分回顾了系统的设计和实现过程,并强调了所取得的成果和创新之处。展望部分则提出了进一步改进和扩展系统的建议,并展示了未来可能的研究方向和发展前景。
2 商圈停车泊位实时查询与推荐系统系统分析
系统分析是软件开发过程中的关键阶段,旨在深入研究和调查待开发系统,以明确用户需求并为系统设计和开发提供基础。
2.1 可行性分析
可行性分析是系统开发前的关键步骤,旨在评估技术实施、经济投入和操作流程的可行性。技术可行性评估系统开发所需技术的可行性和实施性,包括技术方案的适应性和可获得性;经济可行性评估系统开发和运营的成本与效益是否符合预期,操作可行性评估系统实施后操作流程是否顺畅。通过综合评估这三个方面,可以确定系统开发的可行性,为系统的顺利实施和成功运营提供重要依据。
2.1.1 技术可行性分析
基于Web的商圈停车泊位实时查询与推荐系统设计与实现是一个重要的项目,采用了JAVA语言、SpringBoot框架和MYSQL数据库作为技术方案。在大学学习过这两门课程的基础上,以及在小型项目开发和课程设计中的实践经验,对于技术的应用和实现有一定的掌握。因此,通过这些技术的结合应用,可以较为熟练地开发出这样一个基于JAVA和MYSQL的Web管理平台,为商圈停车泊位实时查询与推荐系统的实现提供可行性和技术支持。
2.1.2 经济可行性分析
开发好生活出行商圈停车泊位实时查询与推荐系统并不需要投入太多,开发工具、服务器、数据库等,都可以通过网络搜索、下载、安装,只需要一台普通的计算机就可以完成操作,而且在系统功能规划上通过走访调查目前用户对好生活出行商圈停车泊位实时查询与推荐系统的需求,了解它们对系统具体实现的功能需求,然后进行设计开发,不存在任何开销,因此系统的开发在经济方面是可行的。
2.1.3 操作可行性分析
综合来看,该系统在技术、经济和操作上都具备较高的可行性。这种系统结合了先进的技术,具有高效的数据处理和管理能力;在经济上具有成本控制和效益提升的优势;在操作上操作界面友好,易于使用。因此,该系统的开发和应用将为用户停车的信息化建设和管理带来实质性的好处,促进城市服务的现代化发展。
2.2 系统功能分析
2.2.1 功能性分析
商圈停车泊位实时查询与推荐系统我划分为了普通用户管理模块和管理员模块两大部分。
普通用户管理模块:
(1)用户注册登录:用户可以在系统中浏览信息,但评论等操作需要注册账号。通过注册账号,用户可以实现评论等操作,并通过“我的”按钮方便地管理个人信息和操作记录。
(2)查看商圈停车泊位实时查询与推荐系统的首页信息:系统的首页信息包括停车公告、停车资讯、车位信息等内容,为用户提供全面的停车信息服务。
(3)停车公告:用户可以浏览管理员发布的停车公告,并查看详细内容,及时了解停车相关信息。
(4)停车资讯:用户可以查看管理员发布的停车资讯,支持查看详情、收藏、点赞、评论等操作,提升用户对停车资讯的互动体验。
(5)车位信息:用户可以浏览车位信息,包括编号、名称、类型、价格、面积、区域、规则等内容。支持通过名称或类型查询车位信息,并进行收藏、点赞、评论等操作。
(6)我的账户:用户可以在“我的”下的“我的账户”中管理个人资料和进行密码修改,保障个人信息的安全性和准确性。
(7)个人中心:用户可以通过个人中心查看个人首页、入场记录、出场记录和收藏信息,方便管理个人信息和操作记录,提升用户体验。
管理员管理模块:
(1)登录:管理员在后台输入用户名和密码进行登录,用户名和密码在数据库中设定。登录成功后,管理员可以进入管理后台进行操作。
(2)系统用户:管理员可以对系统中的管理员和普通用户进行增删改查操作,管理系统用户的权限和信息。
(3)车位分类管理:管理员可以通过“车位分类管理”对车位类型进行添加和管理,包括查询、重置和删除等操作,方便管理车位分类信息。
(4)车位信息管理:管理员可以查看所有车位信息,支持按名称或类型查询。管理员可以添加新车位信息,包括编号、名称、类型、价格、面积、区域、收费标准、停车规则等,进行提交、删除和评论管理。
(5)入场记录管理:管理员可以管理前台用户的入场记录信息,进行管理操作,包括车辆离场操作。
(6)出场记录管理:管理员可以管理前台用户的出场记录信息,进行管理操作,包括停车费用支付操作。
(7)系统管理:管理员可以管理系统首页展示的轮播图,进行管理和更新操作。
(8)停车公告管理:
管理员可以查看系统中的所有停车公告信息,对现有公告进行修改、添加新公告或删除操作。
(9)资源管理:管理员可以管理停车资讯和分类信息,对前台展示的停车资讯和分类进行管理和管控。
2.2.2 非功能性分析
非功能性分析旨在评估商圈停车泊位实时查询与推荐系统的非功能需求和性能要求。通过对性能、可靠性、安全性、可用性和扩展性等方面进行评估,确保系统能够满足用户和系统运行的要求。具体如下2-1表格:
表2-1商圈停车泊位实时查询与推荐系统非功能需求表
非功能性要求 | 说明 |
性能 | 评估响应时间、并发用户数、吞吐量等指标,以确保系统稳定高效地运行。 |
可靠性 | 评估系统的稳定性、容错能力和数据完整性,保障系统在故障情况下正常运行。 |
安全性 | 评估用户身份认证、数据加密和访问控制等,保护用户信息和交易的安全。 |
可用性 | 评估系统的稳定性、故障处理能力和用户界面友好性,提供良好的用户体验。 |
扩展性 | 评估系统的可扩展性和灵活性,以便根据需求进行功能扩展和升级。 |
2.3 系统用例分析
商圈停车泊位实时查询与推荐系统的完整UML用例图分别是图2-1和2-2。
图2-1就是普通用户角色的用例展示。
图2-1 商圈停车泊位实时查询与推荐系统普通用户角色用例图
图2-2就是管理员角色的用例展示。
图2-2 商圈停车泊位实时查询与推荐系统管理员角色用例图
2.4 系统流程分析
2.4.1 数据增加流程
用户登录系统后,选择要添加的信息类型,填写相应的信息表单并提交。系统对信息进行处理,并给予用户反馈结果。用户可以根据需要返回上级页面或继续操作。图2-3就是数据删除时的流程图。
图2-3 数据增加流程图
2.4.2数据修改流程
数据修改时的流程和上面介绍的数据增加时的流程差不多,如图2-4所示。
图2-4 数据修改流程图
2.4.3数据删除流程
用户登录系统后,导航至相应的信息管理功能入口。选择要删除的信息,并确认删除操作。系统进行删除处理,并给予用户反馈结果。用户可以根据需要返回上级页面或继续操作。图2-5就是数据删除时的流程图。
图2-5数据删除流程图
2.5本章小结
3 商圈停车泊位实时查询与推荐系统总体设计
3.1 系统功能模块设计
3.1.1整体功能模块设计
通过整体功能模块设计,我们将根据需求分析的结果,将系统的功能划分为不同的模块。每个模块负责实现特定的功能,并与其他模块进行协作。我们将详细定义每个模块的输入、输出、处理逻辑和相互依赖关系。其总体设计模块图如图3-1所示。
图3-1 商圈停车泊位实时查询与推荐系统功能模块图
3.1.2用户模块设计
图3-2用户模块结构图
3.1.3 评论管理模块设计
为了维护平台秩序,好生活出行商圈停车泊位实时查询与推荐系统设计了评论管理模块,管理员有权删除不当评论。评论管理模块让管理员查看、删除评论,确保用户交流环境积极健康。其结构图如下所示:
图3-3评论管理模块结构图
3.1.4车位信息管理模块设计
车位信息模块是系统中核心的功能模块,涉及车位信息的发布、展示和收藏管理等操作。在车位信息模块设计中,我们将定义车位信息数据的结构和属性,包括车位编号、车位名称、车位类型、停车价格、车位面积、车位区域、收费标准、停车规则等。该模块应支持车位信息的分类、搜索、浏览和评论等功能,并提供评论管理接口用于处理用户的评论信息的更新。具体的结构图如下所示:
图3-4车位信息模块结构图
3.2 数据库设计
数据库设计是系统开发中至关重要的一环,它涉及到数据的组织、存储和管理。在数据库设计中,我们将根据系统的需求设计数据库的概念结构和逻辑结构,包括定义实体、属性、关系和约束等。
3.2.1 数据库概念结构设计
数据库概念结构设计主要涉及数据库的实体和实体之间的关系。通过实体-关系模型或者其他适当的模型,我们将定义系统中涉及的各个实体以及它们之间的联系。下面是整个商圈停车泊位实时查询与推荐系统中主要的数据库表总E-R实体关系图。
图3-5 商圈停车泊位实时查询与推荐系统总E-R关系图
3.2.2 数据库逻辑结构设计
通过上一小节中商圈停车泊位实时查询与推荐系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | entry_record_id | int | 10 | 0 | N | Y | 入场记录ID | |
2 | parking_space_number | varchar | 64 | 0 | N | N | 车位编号 | |
3 | parking_space_name | varchar | 64 | 0 | Y | N | 车位名称 | |
4 | parking_space_type | varchar | 64 | 0 | Y | N | 车位类型 | |
5 | parking_price | varchar | 64 | 0 | Y | N | 停车价格 | |
6 | parking_space_area | varchar | 64 | 0 | Y | N | 车位面积 | |
7 | parking_area | varchar | 64 | 0 | Y | N | 车位区域 | |
8 | parking_users | int | 10 | 0 | Y | N | 0 | 停车用户 |
9 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
10 | license_plate_number | varchar | 64 | 0 | Y | N | 车牌号码 | |
11 | entry_time | datetime | 19 | 0 | Y | N | 入场时间 | |
12 | entry_instructions | text | 65535 | 0 | Y | N | 入场说明 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exit_record_id | int | 10 | 0 | N | Y | 出场记录ID | |
2 | parking_space_number | varchar | 64 | 0 | N | N | 车位编号 | |
3 | parking_space_name | varchar | 64 | 0 | Y | N | 车位名称 | |
4 | parking_space_type | varchar | 64 | 0 | Y | N | 车位类型 | |
5 | parking_price | varchar | 64 | 0 | Y | N | 停车价格 | |
6 | parking_space_area | varchar | 64 | 0 | Y | N | 车位面积 | |
7 | parking_area | varchar | 64 | 0 | Y | N | 车位区域 | |
8 | parking_users | int | 10 | 0 | Y | N | 0 | 停车用户 |
9 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
10 | license_plate_number | varchar | 64 | 0 | Y | N | 车牌号码 | |
11 | entry_time | datetime | 19 | 0 | Y | N | 入场时间 | |
12 | time_of_appearance | datetime | 19 | 0 | Y | N | 出场时间 | |
13 | parking_duration | varchar | 64 | 0 | Y | N | 停车时长 | |
14 | parking_fees | varchar | 64 | 0 | Y | N | 停车费用 | |
15 | cost_details | text | 65535 | 0 | Y | N | 费用明细 | |
16 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
17 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
18 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
19 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表parking_space_classification (车位分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | parking_space_classification_id | int | 10 | 0 | N | Y | 车位分类ID | |
2 | parking_space_type | varchar | 64 | 0 | Y | N | 车位类型 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表parking_space_information (车位信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | parking_space_information_id | int | 10 | 0 | N | Y | 车位信息ID | |
2 | parking_space_number | varchar | 64 | 0 | N | N | 车位编号 | |
3 | parking_space_name | varchar | 64 | 0 | Y | N | 车位名称 | |
4 | parking_space_type | varchar | 64 | 0 | Y | N | 车位类型 | |
5 | parking_price | varchar | 64 | 0 | Y | N | 停车价格 | |
6 | parking_space_area | varchar | 64 | 0 | Y | N | 车位面积 | |
7 | parking_area | varchar | 64 | 0 | Y | N | 车位区域 | |
8 | parking_space_image | varchar | 255 | 0 | Y | N | 车位图片 | |
9 | fee_standards | text | 65535 | 0 | Y | N | 收费标准 | |
10 | parking_rules | text | 65535 | 0 | Y | N | 停车规则 | |
11 | parking_space_details | longtext | 2147483647 | 0 | Y | N | 车位详情 | |
12 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
13 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
3.3本章小结
商圈停车泊位实时查询与推荐系统的需求分析主要涵盖系统整体结构和功能模块设计。通过建立E-R模型和数据库逻辑系统设计,完成了数据库系统的构建。
4 商圈停车泊位实时查询与推荐系统详细设计与实现
商圈停车泊位实时查询与推荐系统的详细设计与实现主要基于前期的需求分析和总体设计。页面设计侧重于用户友好性和界面简洁清晰,考虑不同用户角色的需求和操作流程,保持统一的色彩和字体,以提升用户体验。业务逻辑实现根据功能模块确定的业务流程和逻辑处理,包括用户管理、车位管理、入场记录管理等功能的具体实现,确保数据操作的准确性和完整性,处理异常情况,提供良好的用户体验和功能性。这些设计与实现将使商圈停车泊位实时查询与推荐系统具有用户友好的界面和高效的业务逻辑,满足用户需求并提供优质的用户体验。
4.1用户功能模块
4.1.1 前台首页界面
系统首页的布局设计包括顶部导航栏、中间轮播图和底部信息区域。顶部导航栏提供系统功能模块链接,方便用户导航;中间轮播图展示重要信息和活动通知,吸引用户关注;底部信息区域包括系统公告和车辆信息,为用户提供最新公告和推荐课程信息。整体设计简洁清晰,用户可以快速浏览和获取所需信息,界面如下图所示。
图4-1 前台首页界面图
4.1.2 用户注册界面
用户在前台填写个人信息进行注册,注册之后才能进行入场记录查看、收藏、评论等操作,同时保护个人信息安全。界面如下图所示。
图4-2注册界面图
注册关键代码如下所示:
4.1.3 用户登录界面
用户注册成功后,可用注册成功的账号及密码登录系统,进行车位查询、个人信息修改等操作,界面如下图所示。
图4-3用户登录界面图
登录的逻辑代码如下所示:
4.1.4停车公告界面
用户可以浏览管理员发布的停车公告,并查看详细内容,及时了解停车相关信息。停车公告列表展示界面如下图所示。
图4-4停车公告列表展示界面图
4.1.5停车资讯界面
用户可以查看管理员发布的停车资讯,支持查看详情、收藏、点赞、评论等操作,提升用户对停车资讯的互动体验。停车资讯界面如下图4-5所示。
图4-5停车资讯界面图
4.1.6车位信息详情界面
用户可以查看车位信息,在查询到自己想要了解的车位信息的时候,可以进入查看详细的介绍,可以了解到该车位信息的车位编号、车位名称、车位类型、停车价格、车位面积、车位区域、收费标准、停车规则等,同时可以对点击下方的“点赞”、“收藏”进行相关操作,也可以在下方评论区输入想要评论的内容进行评论。
车位信息详情界面如下图4-6所示。
图4-6车位信息详情界面图
4.1.7我的账户界面
当用户点击右上角“我的”这个按钮,会出现子菜单,点击“我的账户”可以对个人的资料、登录系统的密码进行设置管理,我的账户界面如下图4-7所示。
图4-7 我的账户界面图
4.1.8个人中心界面
当用户点击右上角“我的”这个按钮,会出现子菜单,点击“个人中心”可以对个人首页、入场记录、出场记录和收藏的信息进行设置管理。个人中心界面如下图4-8所示。
图4-8个人中心界面图
4.2后台管理功能模块
4.2.1系统用户界面
商圈停车泊位实时查询与推荐系统中的管理人员在“系统用户”这一菜单是中可以对注册的普通用户以及管理员进行管控。界面如下图4-9所示。
图4-9系统用户管理界面图
添加用户信息关键代码如下:
4.2.2 车位信息管理界面
管理员点击“车位信息管理”会显示出所有的车位信息,支持输入车位名称或车位类型对信息进行查询,如果想要添加新的车位信息,点击“添加”按钮,输入车位编号、车位名称、车位类型、停车价格、车位面积、车位区域、收费标准、停车规则等信息,点击“提交”按钮就可以添加了,同时可以选择某一条车位信息,点击“删除”进行删除,也可以对用户提交的车位信息评论的信息进行管控。界面如下图4-10所示。
图4-10车位信息管理界面图
4.2.3 入场记录管理界面
管理员点击“入场记录管理”会显示出所有的入场记录信息,可以添加用户的入场记录信息。添加入场记录界面如下图4-11所示。
图4-11添加入场记录界面图
4.2.4系统管理界面
管理人员在“系统管理”这一菜单下是可以对商圈停车泊位实时查询与推荐系统内的轮播图进行添加修改的,其管理界面如下图4-12所示。
图4-12系统轮播图管理界面图
4.2.5资源管理界面
管理员点击“资源管理”菜单能够对其下子菜单停车资讯和停车资讯的分类进行增删改查。界面如下图4-13所示。
图4-13资源管理界面图
5系统测试
5.1 系统测试的目的
测试目的是为了评估系统或软件在多个方面的质量和性能表现,以发现潜在问题、缺陷和改进点。主要目的包括验证功能的正确性、确保系统稳定性、提升用户体验、检测安全性漏洞、评估系统兼容性、测试系统性能、验证数据准确性和完整性,以及发现潜在缺陷和改进点。通过全面的测试,可以提供可靠、高质量的系统,满足用户需求,并持续改进系统的质量和性能。
5.2 测试用例
以下对多个功能模块进行测试,用户登录功能测试、车位信息查看功能测试、车位信息添加、车位信息搜索、密码修改功能测试,如表5-1、5-2、5-3、5-4、5-5所示:
表5-1 用户登录功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用正确的用户名和密码进行登录 | 成功登录系统,跳转到用户首页 | 登录成功,跳转到用户首页 | 通过 |
TC002 | 使用不存在的用户名进行登录 | 显示错误提示信息:用户名不存在 | 显示错误提示信息:用户名不存在 | 通过 |
TC003 | 使用正确的用户名和错误的密码进行登录 | 显示错误提示信息:密码错误 | 显示错误提示信息:密码错误 | 通过 |
TC004 | 不输入用户名和密码直接点击登录按钮 | 显示错误提示信息:用户名和密码不能为空 | 显示错误提示信息:用户名和密码不能为空 | 通过 |
车位信息查看功能测试:
表5-2 车位信息查看功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 打开车位信息列表页面,检查是否能够正确展示车位信息 | 车位信息列表显示正确 | 车位信息列表显示正确 | 通过 |
TC002 | 点击车位信息详情查看按钮,检查是否能正常打开页面 | 车位信息详情页面显示正确 | 车位信息详情页面显示正确 | 通过 |
TC003 | 检查车位信息搜索功能 | 根据关键字搜索到相关车位信息并正确展示 | 根据关键字搜索到相关车位信息并正确展示 | 通过 |
管理员添加车位信息界面测试:
表5-3 管理员添加车位信息界面测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用合法的信息添加一个新车位信息 | 车位信息成功添加到系统 | 车位信息成功添加到系统 | 通过 |
TC002 | 使用已存在的车位信息名称添加一个新车位信息 | 显示错误提示信息:车位信息名称已存在 | 显示错误提示信息:车位信息名称已存在 | 通过 |
TC003 | 添加车位信息时不输入必填信息 | 显示错误提示信息:必填字段不能为空 | 显示错误提示信息:必填字段不能为空 | 通过 |
表5-4车位信息搜索功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 使用车位信息关键字进行搜索 | 搜索结果包含符合关键字的车位信息 | 搜索结果包含符合关键字的车位信息 | 通过 |
TC002 | 使用不存在的关键字进行搜索 | 搜索结果为空 | 搜索结果为空 | 通过 |
表5-5 密码修改功能测试表
测试用例编号 | 测试描述 | 预期结果 | 实际结果 | 是否通过 |
TC001 | 输入正确的原密码和新密码进行修改 | 密码成功修改 | 密码成功修改 | 通过 |
TC002 | 输入错误的原密码和新密码进行修改 | 显示错误提示信息:原密码错误 | 显示错误提示信息:原密码错误 | 通过 |
TC003 | 不输入原密码和新密码直接点击修改按钮 | 显示错误提示信息:密码不能为空 | 显示错误提示信息:密码不能为空 | 通过 |
5.3 测试结果
经过编写商圈停车泊位实时查询与推荐系统的测试用例,已经检测完毕用户登录功能测试、车位信息查看功能测试、车位信息添加、车位信息搜索、密码修改功能测试,通过这5大模块为商圈停车泊位实时查询与推荐系统设计与实现的后期推广运营提供了强力的技术支撑。
结 论
通过对Spring Boot商圈停车泊位实时查询与推荐系统的开发和实施,我们得出以下结论:该系统充分利用了Java编程语言、Spring Boot框架和MySQL数据库技术,结合前端技术实现了智能化的停车管理系统。系统不仅实现了实时查询停车位信息、推荐停车位、管理停车公告和资讯等基本功能,还通过智能算法提供了个性化的停车推荐服务,提升了用户体验和停车效率。这一系统的成功实施,不仅为城市停车管理带来了新的解决方案,也为智慧城市交通管理提供了有力支持。技术的应用和功能的实现不仅提升了系统的智能化水平,也为城市交通领域的发展带来了新的机遇。通过智能停车管理系统的应用,城市交通管理将迎来更加智能化、便捷化的发展,为城市居民出行带来更多便利和舒适体验,推动城市交通管理向着更加智能化、绿色化的方向发展。
参考文献
[2]马庆.计算机软件开发中JAVA编程语言的应用[J].山西电子技术,2023,(06):84-86+98.
[3]杨芬,宋晓燕.MySQL数据库应用的课程教学分析[J].电子技术,2023,52(10):180-181.
[4]杨华,徐扬.MySQL数据库对中文编码支持的探讨[J].网络安全和信息化,2023,(10):157-160.
[5]陈蓓蕾,洪年松.基于SpringBoot的数据库接口设计[J].信息与电脑(理论版),2023,35(16):181-183.
[6]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
[7]A M L ,J L Y ,S A D , et al.Development of Transportation Models Based on Students’ Interest in a Parking Charging System at Universiti Malaysia Sabah (UMS)[J].Journal of Physics: Conference Series,2022,2314(1):
[8]喻彩丽,赵诣琛,李亮.基于RFID智能停车场收费管理系统设计与实现[J].信息记录材料,2022,23(05):173-176.
[9]刘威,房瑞伟,王冠等.机场高速停车场停车与充电桩收费系统设计[J].中国航务周刊,2021,(38):64-65.
[10]纪云烽,刘丽华,司钧文等.基于物联网的智慧停车场设计[J].辽宁科技学院学报,2021,23(03):18-20.
[11]Cheng F .Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework[J].Advances in Educational Technology and Psychology,2021,5(2):
[12]余以春,闫红梅.临时停车场自动收费系统[J].计算机系统应用,2021,30(05):76-82.
[13]Mingxia S ,Fang Z .Design of an intelligent underground parking guided and charging system based on WiFi[J].Journal of Physics: Conference Series,2021,1920(1):
[14]李双奎,停车场车牌识别系统V1.0.湖南省,张家界通盛智能化工程有限公司,2021-04-27.
[15]谢飞,杨学礼,韦俊.ETC智慧停车场营运管理系统的研究和设计[J].时代汽车,2021,(05):23-24.
[16]邓忠惠,陈炎观,蒋玉勤等.智能停车场收费系统设计[J].轻工科技,2020,36(09):91-93.
[17]王华文,智能停车场管理系统软件.安徽省,安徽德顺智能科技有限公司,2020-05-21.
[18]朱百万.车脸识别的停车场收费系统设计与实现[J].电子技术与软件工程,2020,(05):199-201.
[19]黄慧琼,张泽昆,荣武月.城市中心商业区停车场ETC系统应用与评价[J].交通科技与经济,2020,22(01):33-37.
[20]桂丝玥,孙玉霞.基于“互联网+”的智能停车系统客户端的设计与实现[J].电脑知识与技术,2020,16(03):87-89.
致 谢
逝者如斯夫,不舍昼夜。转眼间,大学生活便已经接近尾声,人面对着离别与结束,总是充满着不舍与茫然,我亦如此,仍记得那年秋天,我迫不及待的提前一天到了学校,面对学校巍峨的大门,我心里充满了期待:这里,就是我新生活的起点吗?那天,阳光明媚,学校的欢迎仪式很热烈,我面对着一个个对着我微笑的同学,仿佛一缕缕阳光透过胸口照进了我心里,同时,在那天我认识可爱的室友,我们携手共同度过了这难忘的两年。如今,我望着这篇论文的致谢,不禁又要问自己:现在,我们就要说再见了吗?
感慨莫名,不知所言。遥想当初刚来学校的时候,心里总是想着工科学校会过于板正,会缺乏一些柔情,当时心里甚至有一点点排斥,但是随着我对学校的慢慢认识与了解,我才认识到了她的美丽,她的柔情,并且慢慢的喜欢上了这个校园,但是时间太快了,快到我还没有好好体会她的美丽便要离开了,但是她带给我的回忆,永远不会离开我,也许真正离开那天我的眼里会满含泪水,我不是因为难过,我只是想将她的样子映在我的泪水里,刻在我的心里。最后,感谢我的老师们,是你们教授了我们知识与做人的道理;感谢我的室友们,是你们陪伴了我如此之久;感谢每位关心与支持我的人。
少年,追风赶月莫停留,平荒尽处是春山。