博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,博客中有上百套程序可供参考,欢迎共同交流学习。
🍅文末点击卡片获取联系🍅
技术:springboot+mysql+vue+tomcat
目录
1 系统介绍
如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统相亲信息管理难度大,容错率低,管理人员处理数据费工费时,所以专门为解决这个难题开发了一个相亲网站,可以解决许多问题。
相亲网站可以实现婚礼公司管理,婚礼公司收藏管理, 婚礼公司预约管理,结婚案例管理,结婚案例收藏管理,用户管理,相亲管理,相亲留言管理,相亲收藏管理等功能。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。
相亲网站可以提高相亲信息管理问题的解决效率,优化相亲信息处理流程,保证相亲信息数据的安全,它是一个非常可靠,非常安全的应用程序。
2 系统背景
2.1 课题背景
二十一世纪互联网的出现,改变了几千年以来人们的生活,不仅仅是生活物资的丰富,还有精神层次的丰富。在互联网诞生之前,地域位置往往是人们思想上不可跨域的鸿沟,信息的传播速度极慢,信息处理的速度和要求还是通过人们骑马或者是信鸽传递,这些信息传递都是不可控制的,中间很有可能丢失,信息的传递水平决定了人们生活的水平。如今大家都在使用互联网软件产品,从内部管理设置计算机管理,提高内部信息化的管理水准,从外部市场也可以用计算机获取相关数据进行处理,如今各行各业已经严重依赖于计算机了。
本课题研究和开发相亲网站,让安装在计算机上的该系统变成管理人员的小帮手,提高相亲信息处理速度,规范相亲信息处理流程,让管理人员的产出效益更高。
2.2 课题意义
传统处理数据,必须是一张张纸,然后处理完毕又是统计在一张张纸上面,不断的重复处理,最终有个结果给最高层作为参考,这个模式在互联网没有出现之前,是一种常见的事情,信息管理的效率提不上去,人多不一定力量大,因为人多肯定更加消耗资源,并且因为人类需要休息,需要管理,思想会不统一,会偷懒,所以人们研究出专门帮助人们计算的机器,就是计算机的前身,到了互联网时代,人们发现完全可以让程序供应商提供解决方案,自己挑选自己合适的方案来提高自己的产出比。所以在日常工作和生活中会发现各种各样方便人们的工具。
本课题研发的相亲网站,就是提供相亲信息处理的解决方案,它可以短时间处理完信息,并且这些信息都有专门的存储设备,而且数据的备份和迁移都可以设定为无人值守,从人力角度和信息处理角度以及信息安全角度,相亲网站是完胜传统纸质操作的。
3 系统功能结构
3.1 管理员
3.2 用户
4 数据库结构
本小节主要任务即是根据上述内容进行数据存储结构的设计,实体的属性就用来表示字段名称,不同的字段表示的数据类型以及取值都不相同,以及该表各个字段是否能够保持空等进行说明,设计完成一张数据表的结构之后,在保存时同样要命名,尽量选择英文名称进行命名并保存,还不容易导致系统出错。接下来就对设计的表进行简单说明。
表4.1 婚礼公司表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
hunligongsi_name | 婚礼公司名称 | varchar(200) | 是 |
hunligongsi_photo | 婚礼公司照片 | varchar(200) | 是 |
hunligongsi_address | 公司位置 | varchar(200) | 是 |
hunligongsi_guimo | 公司规模 | varchar(200) | 是 |
hunligongsi_zijin | 注册资金 | varchar(200) | 是 |
hunligongsi_content | 公司介绍 | text | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.2 婚礼公司收藏表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
hunligongsi_id | 婚礼公司 | int(11) | 是 |
yonghu_id | 用户 | int(11) | 是 |
hunligongsi_collection_types | 类型 | int(11) | 是 |
insert_time | 收藏时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.3 婚礼公司预约表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
hunligongsi_order_uuid_number | 预约唯一编号 | varchar(200) | 是 |
hunligongsi_id | 婚礼公司 | int(11) | 是 |
yonghu_id | 用户 | int(11) | 是 |
yuyue_time | 预约时间 | timestamp | 是 |
insert_time | 添加时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.4 结婚案例表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
hunligongsi_order_uuid_number | 结婚案例编号 | varchar(200) | 是 |
jiehunanli_name | 结婚案例名称 | varchar(200) | 是 |
jiehunanli_photo | 结婚案例照片 | varchar(200) | 是 |
jiehunanli_content | 结婚案例详情 | text | 是 |
insert_time | 添加时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.5 结婚案例收藏表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
jiehunanli_id | 结婚案例 | int(11) | 是 |
yonghu_id | 用户 | int(11) | 是 |
jiehunanli_collection_types | 类型 | int(11) | 是 |
insert_time | 收藏时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.6 管理员表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | bigint(20) | 否 |
username | 用户名 | varchar(100) | 否 |
password | 密码 | varchar(100) | 否 |
role | 角色 | varchar(100) | 是 |
addtime | 新增时间 | timestamp | 否 |
表4.7 相亲表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
yonghu_id | 用户 | int(11) | 是 |
xiangqin_name | 姓名 | varchar(200) | 是 |
sex_types | 性别 | int(11) | 是 |
xiangqin_photo | 照片 | varchar(200) | 是 |
shuxiang | 属相 | varchar(200) | 是 |
youwuzinv | 有无子女 | varchar(200) | 是 |
xuexing | 血型 | varchar(200) | 是 |
tizhong | 体重(kg) | int(11) | 是 |
zhiye | 职业 | varchar(200) | 是 |
gongsixingzhi | 公司性质 | varchar(200) | 是 |
yuexin | 月薪 | varchar(200) | 是 |
geren_content | 个人介绍 | text | 是 |
gongzuo_content | 工作情况 | text | 是 |
jiating_content | 家庭情况 | text | 是 |
zeou_content | 择偶意向 | text | 是 |
insert_time | 添加时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.8 相亲收藏表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
xiangqin_id | 相亲 | int(11) | 是 |
yonghu_id | 用户 | int(11) | 是 |
xiangqin_collection_types | 类型 | int(11) | 是 |
insert_time | 收藏时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.9 相亲留言表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
xiangqin_id | 相亲 | int(11) | 是 |
yonghu_id | 用户 | int(11) | 是 |
xiangqin_liuyan_text | 留言内容 | text | 是 |
reply_text | 回复内容 | text | 是 |
insert_time | 留言时间 | timestamp | 是 |
update_time | 回复时间 | timestamp | 是 |
create_time | 创建时间 | timestamp | 是 |
表4.10 用户表
字段 | 注释 | 类型 | 空 |
id (主键) | 主键 | int(11) | 否 |
username | 账户 | varchar(200) | 是 |
password | 密码 | varchar(200) | 是 |
yonghu_name | 用户姓名 | varchar(200) | 是 |
yonghu_phone | 用户手机号 | varchar(200) | 是 |
yonghu_id_number | 用户身份证号 | varchar(200) | 是 |
yonghu_photo | 用户头像 | varchar(200) | 是 |
create_time | 创建时间 | timestamp | 是 |
5 系统功能
5.1 管理员功能实现
5.1.1 婚礼公司管理
图5.1 即为编码实现的婚礼公司管理界面,婚礼公司信息包括婚礼公司名称,婚礼公司位置,婚礼公司规模,注册资金等信息,管理员修改婚礼公司信息,新增婚礼公司,删除婚礼公司等。
图5.1 婚礼公司管理界面
5.1.2 用户管理
图5.2 即为编码实现的用户管理界面,管理员在用户管理界面中可以为本界面显示的所有用户信息进行查询,修改,删除。
图5.2 用户管理界面
5.1.3 结婚案例管理
图5.3 即为编码实现的结婚案例管理界面,结婚案例信息包括结婚案例照片,结婚案例名称,结婚案例编号等信息,管理员对结婚案例信息进行增删改查管理。
图5.3 结婚案例管理界面
5.1.4 相亲管理
图5.4 即为编码实现的相亲管理界面,相亲信息包括用户姓名,血型,体重,职业,有无子女,属相,照片等信息,管理员可以修改相亲信息,新增相亲信息,查询相亲信息等。
图5.4 相亲管理界面
5.2 用户功能实现
5.2.1 婚礼公司
图5.5 即为编码实现的婚礼公司界面,用户在婚礼公司界面查看婚礼公司详情介绍,如果有需要,可以在婚礼公司界面预约婚礼公司。
图5.5 婚礼公司界面
5.2.2 结婚案例
图5.6 即为编码实现的结婚案例界面,用户在结婚案例界面对结婚案例的详情进行查看,可以对结婚案例进行收藏。
图5.6 结婚案例界面
5.2.3 相亲信息
图5.7 即为编码实现的相亲信息界面,用户在相亲信息界面查看对方的工作情况信息,家庭情况信息以及择偶意向信息,用户可以在相亲信息界面的留言区域发布留言,也能先收藏相亲信息,便于下次查看。
图5.7 相亲信息界面
6 系统测试
当系统测试环节开始的时候,也就说明对于系统的编码已经弄得大致通顺了,剩下来需要对一些模块和功能进行测试,这个环节就叫系统测试。在程序开发过程中,系统测试是整个开发过程不能缺少的。原因很简单,系统开发人员在面对各种需求需要对各个模块进行编码,开发人员编写过程中,对于程序的理解全部都在编码里面,一人计短,当一个人去做一些事情的时候,把自己的理解变成成果,有可能理解错误,这个在程序开发过程中很常见。程序开发人员在面对复杂的逻辑,没有想象中的多么清晰,开发过程就是面对着一堆代码,不断的变换数据类型,这些很容易实现程序开发人员的想法,但是如果是比较复杂的逻辑,很可能会出现各种问题,这是无法避免的。所以说,需要额外的人员进行系统测试编写,要站在用户使用的角度去发现问题,这样开发与测试的分离,有助于系统开发的强壮,让程序表达的更完美一些。之所以把系统测试安排到程序开发过程中的原因在于,当测试过程中发现的问题可以最快速度的反馈到程序开发人员手里,可以以最快的时间解决问题。所以必须在系统测试环节做好应该做好的事情,让程序开发从开始到结束都有一个完美的流程。
6.1 功能测试
本节主要选择一些功能进行具体测试描述,在相应的功能里面,根据不同的输入看看能否达到理想中的效果。以下会描述部分功能的测试过程和结果。
6.1.1 登录功能测试
登录是一个常规功能,虽然是常规功能,但是用处很大,可以拒绝非法用户访问,只有合法用户才可以访问对应的功能,这样能保证程序设定的功能符合安全性要求。
表6.1 管理员登录功能测试表
管理员账号 | 管理员密码 | 结果 |
uuu | uuu | 成功登录系统 |
yyy | uuu | 登录失败 |
uuu | yyy | 登录失败 |
只有正确的账号密码才会进行跳转到对应的功能区,如果输入的账号密码不对的话,肯定会有相关提示,用来提示操作人员注意输入正确的账号密码,这样有助于提高用户体验。这里以使用者提交错误的账号为“yyy”,正确的密码为“uuu”为例进行测试,具体反馈结果看下面。
6.1.2 修改密码功能测试
任何用户角色都有安全性要求,那么对应的密码最好是经常更改,只有经常更改才会降低坏人的有机可乘几率,达到密码保护的最低要求,当然,如果用户登录人离开了,为了防止其他人乘机篡改密码,那么也会设定旧密码要求,只有输入正确的旧密码才可以进行密码的修改。下面就是测试过程。
表6.2 修改密码功能测试表
之前的旧密码 | 设置的新密码 | 结果 |
uuu | yyy | 成功修改密码 |
hhh | yyy | 修改密码失败 |
uuu | 修改密码失败 |
不管是旧密码错误还是新密码不合规,都会提示相应的要求,下面就是关于旧密码输入错误的提示。
6.2 系统测试结果
对相亲网站进行了各种检测,包含功能检测和性能检测,操作性检测,兼容性检测,通过各方面检测结果来判定系统是符合设计目标,并且在扩展性或者是稳定性上面,也有很好的表现,能完全的满足用户需求。
7 总结
由于本人学习的是计算机方面的专业,学习了一定的开发知识,因此,对于开发一款已经确定了课题的相亲网站,从功能需求,功能模块划分,数据库的选择与设计,编程语言的确定,系统界面的布局和设计等知识,我都有个大致的思路。我运用已经具备的理论知识,加上后期从网络渠道获取的相关技术知识,能够在系统完成开发后期,编写相应的系统文档。
相亲网站制作期间,我也遇到过一些难题,模块拆分不够精细,以及数据表需要设计几张表,还有对于开发技术的深度理论学习还不充分等,不过我能够通过网络或者通过学院提供的图书馆寻求解决办法。比如在不知道具体功能的情况下,我从网上下载了很多的与相亲网站相关的程序,分析了它们的功能之后,我再结合即将开发的相亲网站进行综合分析,选取了适合相亲网站的功能部分,再具体模块具体分析,设计专属项目功能。对于数据表的设计,先在图书馆学习,然后查看相似系统对于数据表的结构设计等知识,然后在本系统功能确定的情况下,结合本系统设计了配套的数据表,对于难度最大的开发技术部分,这是需要大量时间调试的,一般都是对基础数据的增加,更新,查询或修改方面的代码,然后把本系统能够运用的代码部分在简单更改后进行使用,又经过了简单的测试工作,最终呈现出一个完整的能够解决用户实际问题的相亲网站。该系统唯一不足的就是代码方面还有很多重复的部分,不够精简,还有用户操作本系统,对于用户的误操作行为,本系统还不能及时反馈,这也是一大缺点。
相亲网站完成了,其相应的配套文档也需要进行编写,该文档主要描述相亲网站是如何进行分析,设计以及实现的,让其他阅读本文档的人增加对该系统的了解,编写文档过程中,由于自己平时对于办公软件的操作不是很频繁,根据学院要求的文档排版格式进行编辑也花了很多时间,在不断学习排版技巧以及对本系统配套文档的反复修改之后,最终在学院规定的时间内进行了文档定稿。
毕业项目各个工作进行到此,我也是收获颇丰,正因为自己努力学习知识,积极寻求解决办法,才让我能够提交一个完整的作品。制作毕业项目让我又得到了成长,不仅是专业知识的增加,也学到了解决问题的能力和方法。