数据库实现
通过数据库,可以对数据进行新增、查询、更新、删除等操作,从而实现对数据的有效管理,并且实现数据的整合与共享。数据库可以优化数据管理和处理,提供更快、更准确、更可靠、更安全的数据管理功能。通过索引,可以提高查询效率并解决多并发请求等问题。同时,利用数据挖掘、数据分析等技术,深度分析数据,提取有效信息。本系统的数据库表,如图所示。
1.用户信息表。
字段名称 |
类型 |
可否为空 |
主键 |
默认值 |
中文名称 |
User-ID |
Varchar(20) |
YES |
PRI |
Null |
用户ID |
User-name |
Varchar(20) |
YES |
Null |
用户名 | |
password |
Varchar(20) |
YES |
Null |
密码 | |
sex |
Varchar(10) |
YES |
Null |
性别 | |
age |
Int(10) |
YES |
Null |
年龄 |
2.高校信息表。
字段名称 |
类型 |
可否为空 |
主键 |
默认值 |
中文名称 |
Shcool-ID |
Varchar(20) |
YES |
PRI |
Null |
高校ID |
School-name |
Varchar(20) |
YES |
Null |
高校名称 | |
address |
Varchar(20) |
YES |
Null |
地址 | |
subject |
Varchar(20) |
YES |
Null |
专业 |
3.专业信息表。
字段名称 |
类型 |
可否为空 |
主键 |
默认值 |
中文名称 |
Subject-ID |
Varchar(20) |
YES |
PRI |
Null |
专业ID |
Subject-name |
Varchar(20) |
YES |
Null |
专业名称 | |
system |
Int(20) |
YES |
Null |
学制 | |
fee |
float(20) |
YES |
Null |
学费 |
4.推荐信息表。
字段名称 |
类型 |
可否为空 |
主键 |
默认值 |
中文名称 |
User-ID |
Varchar(20) |
YES |
PRI |
Null |
用户ID |
re-school |
Varchar(20) |
YES |
Null |
推荐高校 | |
re-subject |
Varchar(20) |
YES |
Null |
推荐专业 | |
re-time |
datetime |
YES |
Null |
推荐时间 |
第6章 系统测试
6.1 系统测试目的与目标
系统测试的目的是要证明开发过程是错误的,尽可能多的发现程序中存在的bug,而不是证明程序没有错[15]。一个好的测试案例是指它可以发现目前尚未发现的错误;一个成功的测试是指它能发现迄今尚未发现的测试。这个观点提醒我们,测试应该着重找出错误,而不是证明软件的正确功能。
首先,测试不仅仅是为了找出错误。通过分析错误的原因和分布特征,项目经理可以更有效地识别和改进他们目前使用的软件系统中的缺陷。同时,这种分析也可以帮助我们设计有针对性的检测方法,提高测试的有效性。
6.2 系统测试方法
测试方法中较为常用的测试方法是白盒测试和黑盒测试。白盒测试经常称为结构测试,在系统运行的整个过程中,通过输入逻辑性较强的测试和验证程序来实现准确无误的工作。黑盒测试通常称为性能测试,它通常是一种在程序接口进行测试的方法,通常包括接收和输出有关程序功能和使用方法的数据。它还可以输出正确的信息,同时确保与外部信息的完全连接。
6.3 系统测试用例
对该系统的测试主要是登录功能、旅游景点模块、预约模块以及管理员模块。
6.3.1 登录功能测试
以下是对登录功能的测试,该测试主要是为了检测用户输入的用户名、密码以及拼图验证是否与数据库中的数据匹配,若输入错误将无法进入系统。测试结果如下表6.1。
表6.1 登录功能测试表
功能项6 |
数据6 |
预期结果6 |
最终结果 |
用户登录 |
用户名:lzh12 密码:123456 完成拼图验证 |
用户不存在 |
用户不存在 |
用户名:zytyy 密码:99988 完成拼图验证 |
提示用户名或密码错误 |
提示用户名或密码错误 | |
用户名:zytyy 密码:123456 未完成拼图验证 |
验证失败 |
验证失败 | |
用户名:zytyy 密码:123456 完成拼图验证 |
登录成功 |
登录成功 | |
管理员登录 |
用户名:admin 密码:1234 完成拼图验证 |
提示用户名或密码错误 |
提示用户名或密码错误 |
用户名:admin 密码:asd123 完成拼图验证 |
登录成功 |
登录成功 | |
用户名:admin 密码:asd123 未完成拼图验证 |
验证失败 |
验证失败 |
6.3.2 旅游景点模块测试
旅游景点模块主要测试的功能是查询旅游景点、收藏景点、购买门票、评论景点。测试结果如下表6.2。
表6.2 旅游景点模块测试表
功能项a |
数据a |
预期结果a |
最终结果a |
查询旅游景点 |
输入:南山 |
显示名称含南山的景点 |
显示名称含南山的景点 |
输入:吉阳区 |
显示吉阳区的旅游景点 |
显示吉阳区的旅游景点 | |
收藏景点 |
在景点详情页点击收藏 |
收藏成功 |
收藏成功 |
购买门票 |
在景点详情页点击购买 |
购买成功 |
购买成功 |
评论景点 |
在评论区发布评论 |
评论成功 |
评论成功 |
6.3.3 预约模块测试
预约模块主要测试的功能是预约酒店、预约导游。测试结果如下表6.3。
表6.3 预约模块测试表
功能项a |
数据a |
预期结果a |
最终结果a |
预约 |
预约怡庭酒店 |
预约成功 |
预约成功 |
预约苏明导游 |
预约成功 |
预约成功 |
6.3.4 管理员模块测试
管理员模块主要测试轮播图管理、公告管理、用户管理、资讯分类管理、旅游景点管理、旅游路线管理、留言管理等功能模块。测试结果如下表6.4。
表6.4 管理员模块测试表
功能项a |
数据a |
预期结果a |
最终结果a |
轮播图管理 |
添加轮播图 |
添加成功 |
添加成功 |
修改轮播图 删除轮播图 |
修改成功 删除成功 |
修改成功 删除成功 | |
公告管理 |
添加公告信息 修改公告信息 删除公告信息 |
添加成功 修改成功 删除成功 |
添加成功 修改成功 删除成功 |
用户管理 |
修改用户头像 删除用户:zz用户 |
修改成功 删除成功 |
修改成功 删除成功 |
资讯分类管理 |
资讯分类添加:旅游 删除资讯分类:创新 |
添加成功 删除成功 |
添加成功 删除成功 |
旅游路线管理 |
添加一日游路线 删除两日游路线 |
添加成功 删除成功 |
添加成功 删除成功 |
留言管理 |
删除留言1 回复留言:已读 |
删除成功 回复成功 |
删除成功 回复成功 |
6.4 测试总结
测试是根据系统的运行过程,在认为系统运行正常的情况下,找到一套能够打破系统的实验。通过对系统的功能模块进行测试,结果显示所有功能都能正常运行,证明该系统满足了用户的需求,满足了系统的正常运行。
第7章 总结与展望
7.1 总结
本文旨在构建一个基于Spark的高考志愿填报推荐系统,通过运用大数据技术和协同过滤算法,为学生提供更加精准、个性化的志愿填报建议。系统采用Python语言和Django框架进行开发,利用Spark集群进行大规模数据的处理和模型训练。随着大数据和人工智能技术的不断发展,高考志愿填报推荐系统将在未来发挥更加重要的作用。我们将继续优化算法、扩展数据集、提升系统性能,为更多学生提供更加优质、高效的志愿填报服务。但本人能力有限,该系统功能不够完善,模型算法还需优化,需要进一步查阅资料和文献进行补充完善。
7.2 展望
基于Spark的高考志愿填报推荐系统的毕业设计是一个富有挑战性和实际意义的项目。目前使用的是基于协同过滤、内容推荐等传统的推荐算法,时间较短,相关知识储备不足,该系统成果不是很成熟,展望未来,可以从以下几个方面对该系统进行进一步的优化和拓展:
1.丰富与优化数据源,可以考虑加入更多维度的数据,如学校的师资力量、科研实力、就业率、专业设置、学费等,以及考生的兴趣爱好、职业规划等信息,使推荐结果更加全面和个性化。
2.引入深度学习、强化学习等先进技术,结合Spark的分布式计算能力,提高推荐的准确性和效率。同时,可以考虑设计一种混合推荐策略,结合多种推荐算法的优点,为考生提供更加精准的志愿填报建议。
3.用户界面的优化与交互性的提升,设计一个直观、易用的用户界面,方便考生和家长使用系统。同时,可以提供丰富的交互功能,如在线咨询、志愿填报模拟等,增强用户体验。
4.隐私保护与安全性,在处理考生个人信息时,需要严格遵守相关法律法规,确保数据的隐私性和安全性。可以采用数据加密、访问控制等技术手段,防止数据泄露和滥用。
综上所述,基于Spark的高考志愿填报推荐系统的毕业设计具有广阔的发展前景和实际应用价值。通过不断优化和拓展系统功能,可以为考生提供更加精准、个性化的志愿填报建议,帮助他们更好地规划未来。
参考文献
- 韩思瑞.高考志愿个性化推荐相关算法研究及系统设计[D].西安理工大学,2023.
- 杨辉,黄家昌.基于Vue的页面设计器实现与应用[J].现代信息科技,2023,7(10):99-101.
[3] 陈澜涛.基于机器学习的推荐算法研究及分布式实现[D].西安电子科技大学,2021.
[4] 高丽丽,樊彩虹.基于大数据的高考志愿填报推荐系统的设计[J].电子技术与软件工程,2021(22):213-215.
[5] 于超.高考志愿与录取的匹配度分析与优化技术研究[D].青岛科技大学,2019.
[6] 宋小烜.基于深度特征提取的个性化高考志愿推荐系统研究[D].西北大学,2023.
[7] 黄必栋.基于PySpark和Pandas融合的大数据时序分析方法[J].电子技术与软件工程,2022(01):201-204.
[8] 孙瑜.基于Scrapy框架的网络爬虫系统的设计与实现[D].北京交通大学,2020.
[9] 文小月. 基于Spark平台的协同过滤推荐算法研究[D].云南财经大学,2023.
[10] 郭鹤楠.基于Django和Python技术的网站设计与实现[J].数字通信世界,2023(06):60-62.
[11] 高坤.基于MVVM模式的前端框架的渲染优化研究与实现[D].西南科技大学,2023.
[12] 崔欢欢.基于Python的网络爬虫技术研究[J].信息记录材料,2023,24(06):172-174.
[13] 白俊杰.基于混合推荐的高考志愿推荐系统的设计与实现[D].内蒙古大学,2023.
[14] 刘启伟. 基于Vue.js框架的Web前端开发工具的设计与实现[D].北京邮电大学,2022.
[15] 钱诗佳,陈雨龙,李全.基于Django的软件推荐平台设计[J].信息技术与信息化,2021(10):81-83.