目 录
摘要
第1章 绪论
1.1 研究背景与意义
1.2 研究现状
1.3论文结构与章节安排
第2章 相关技术
2.1开发技术
2.2 Java简介
2.3 MVVM模式
2.4 B/S结构
2.5 MySQL数据库
2.6 SpringBoot框架介绍
第3章 系统分析
3.1 可行性分析
3.2 系统流程分析
3.2.1 数据增加流程
3.2.2 数据修改流程
3.2.3 数据删除流程
3.3 系统功能分析
3.3.1 功能性分析
3.3.2 非功能性分析
3.4 系统用例分析
3.5本章小结
第4章 系统设计
4.1 系统架构设计
4.2 系统功能模块设计
4.2.1整体功能模块设计
4.2.2用户模块设计
4.2.3 评论管理模块设计
4.2.4学校信息管理模块设计
4.3 数据库设计
4.3.1 数据库概念结构设计
4.3.2 数据库逻辑结构设计
表alternative_library (备选库)
表article (文章:用于内容管理系统的文章)
表collect (收藏)
表notice (公告)
表professional_classification (专业分类)
表professional_library (专业库)
表registered_users (注册用户)
表school_information (学校信息)
表slides (轮播图)
3.4本章小结
第5章 系统详细设计
5.1用户功能模块
5.1.1 前台首页界面
5.1.2 用户注册界面
5.1.3 用户登录界面
5.1.4公告信息界面
5.1.5 校园资讯界面
5.1.6 学校信息详情界面
5.1.7 专业库界面
5.2管理员功能模块
5.3.1 轮播图管理界面
5.3.2 系统用户管理界面
5.3.3 资源管理管理界面
5.3.4 模块管理界面
第6章 系统测试
6.1 系统测试用例
6.2 系统测试结果
结论
参考文献
致 谢
随着计算机科学技术的日渐成熟,人们已经深刻地认识到了计算机在各个领域中发挥的功能的强大,计算机已经进入到了人类社会发展的各个领域,并且发挥着十分重要的作用。目前高考志愿选择系统是一项系统而复杂的工作,它需要一个团队互相配合、分工协作。在该领域,传统的手工存取或者借助一些软件对高考志愿选择涉及到的信息进行管理方式常常不能对高考志愿选择系统管理各种信息进行实时跟踪与管理,为进一步完善软件高考志愿选择系统信息管理流程及资源的统一管理,更加全面、有效的服务于软件开发过程,更好的方便软件开发过程管理,故开发此高考志愿选择系统。
论文针对在高校活动信息数据规模大,管理员人员和用户需要对高考志愿选择系统管理涉及到的信息进行管理的需求,设计了高考志愿选择系统的框架,给出了高考志愿选择系统的总体设计,并对高考志愿选择系统的架构及关键模块的实现过程进行了详细论述。采用Java语言和MySQL数据库技术,基于springboot框架实现了一个完整系统的设计,为使用者提供了良好的高考志愿选择系统。
关键词:高考志愿选择系统;Java;MySQL;springboot框架
Springboot College Entrance Examination Volunteer Selection System
Abstract
With the gradual maturity of computer science and technology, people have deeply realized the powerful functions that computers play in various fields. Computers have entered various fields of human social development and play a very important role. At present, the college entrance examination volunteer selection system is a systematic and complex task that requires a team to cooperate and divide labor. In this field, the traditional manual access or some software management methods for the information involved in the college entrance examination volunteer selection often cannot track and manage all kinds of information in the college entrance examination volunteer selection system in real time. In order to further improve the information management process of the software college entrance examination volunteer selection system and the unified management of resources, it can more comprehensively and effectively serve the software development process, and better facilitate the management of the software development process, Therefore, this college entrance examination volunteer selection system has been developed.
The paper focuses on the large scale of activity information data in universities, and the need for administrators and users to manage the information involved in the management of the college entrance examination volunteer selection system. The framework of the college entrance examination volunteer selection system is designed, and the overall design of the college entrance examination volunteer selection system is provided. The architecture of the college entrance examination volunteer selection system and the implementation process of key modules are discussed in detail. Using Java language and MySQL database technology, a complete system design is implemented based on the spring boot framework, providing users with a good college entrance examination volunteer selection system.
Keywords: College Entrance Examination Volunteer Selection System; Java; MySQL; Springboot framework
第1章 绪论
随着高中教育的普及,高考几乎是每个高中学子都要经历的一道坎。据统计,自1977年再次恢复高考之后,报名高考的人数年年攀升,最高能达1000万人之多;另外,短短40年时间,高校从404所发展到了2595所,且录取率从5%升到了75%上下。由此可见高考教育的欣欣向荣之态。在我国,高考可以说是人生的一大转折,去一个好的学校、合乎兴趣又前景不错的专业,这极有可能意味着,你从此能走上更优的康庄大道。
高考志愿是考生在高考完后选择院校和专业的活动,该活动是考生与院校之间的"双向选择",首先学生在填报志愿的过程中表达了自己对什么高校、哪种专业的向往,而院校则根据考生的志愿来择优录取。简言之,高考志愿是考生职业向往、兴趣爱好、学习能力等因素的综合反映。如何让高校和学生在"双向选择"中达到一种平衡,尤其是让学生选择一个理想的学校和专业,这是一个深话题。
理性投资人会用最少的投入得到最大的收益,确保利益最大化。填志愿也一样,理性志愿人会以最少的分数来得到优质大学、适宜专业的垂青。但是,在填志愿时,各位考生对有关信息的掌握是有差异的;掌握信息比较充分的学生,往往处于比较有利的地位,而信息贫乏的学生,则处于比较不利的地位。全国高校多达2595所,专业也多达1000多种,大部分学生和家长对这些学校和专业的信息掌握都十分匮乏,以至上了一个性价比不那么高的学校和专业,抱憾终生;不少学生本科毕业工作不理想而选择考研、考公务员;更有甚者,多花一年的时间成本去复读。所以,对于考生来说合理训左志愿意义深远,不仅能节约时间成本、让学生选择一个合乎兴趣和有职业竞争力的专业,更能一定程度上提高报录比、降低复读率的问题。
高考的重要性对不同的人来说意义不同,对于农村的考生来说那就意味着是一次机遇,一直所期待的事情,农民的孩子要想走向世界,这个高考就是一个跳板,是一个公平竞争的平台,可以展现自我的舞台,只有通过高考考上一所很好的大学,不仅对自己,更是对家庭乃至一个村庄都有很重要的意义。农村的孩子只有这样才能争气,才能成为家里的骄傲,父母拼搏半辈子,辛苦半辈子就是为了让自己的孩子能够在高考上取得满意的成绩。对于城里的孩子也同样重要﹐虽然良好的教育条件,但是还需要高考这个平台来分出个高低来,高的可以接受更加顶级的教育,低的只能接受较一般的教育。上大学的和没上大学的是有很大区别的,首先思想认识是不一样的,个人的修养也是不同的,素质也可以有所体现。我说的是一般的情况下,只有能够通过高考的检验进入大学的殿堂才能够走的更远、生活的更有意思。
学习和深造是无止境的,但学习具有连续性和阶段性。从人才成长的角度讲,学生进入高中后,就开始了“基础教育"向“专业教育"过渡阶段。高考是完成这一过渡阶段、保持受教育连续性的关键时刻。在进入“专业教育"前,必须确定“专业教育"的方向。目前,我国有约1100所普通高等学校。专业设置分为工科、理科、农科、林科、医药、文科、政法、财经、师、体育、艺术等十几科,近千个专业。培养目标、毕业生使用方向又各不相同﹐选报高考志愿时,考生必须在众多的院校、专业中做出选择,确定方向。
基于高考的重要性﹐高考志愿填报工作显得尤为重要。现在网上充斥着各种高考志愿,良莠不齐,甚至以测试考生的性格意愿得出适合的专业。这就需要一个能够及时、准确、有效地提供高考志愿填报信息的,来帮助考生在众多的院校、专业中做出选择,确定方向。
论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对网站需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:
第一章:引言。第一章主要介绍了课题研究的背景,系统研究现状和本文的研究内容与主要工作。
第二章:系统需求分析。第二章主要从系统的用户、功能等方面进行需求分析。
第三章:系统设计。第三章主要对系统框架、系统功能模块、数据库进行功能设计。
第四章:系统实现。第四章主要介绍了系统框架搭建、系统界面的实现。
第五章:系统测试。第五章主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结。
2.1开发技术
本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用SpringBoot作为开发框架,同时集成MyBatis、Redis等相关技术。
2.2 Java简介
Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。
2.3 MVVM模式
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
2.4 B/S结构
B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题。
2.5 MySQL数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
2.6 SpringBoot框架介绍
第3章 系统分析
系统分析是开发一个项目的先决条件,通过系统分析可以很好的了解系统的主体用户的基本需求情况,同时这也是项目的开发的原因。进而对系统开发进行可行性分析,通常包括技术可行性、经济可行性等,可行性分析同时也是从项目整体角度进行的分析。然后就是对项目的具体需求进行分析,分析的手段一般都是通过用户的用例图来实现。下面是详细的介绍。
经济可行性在此仅代表网站的运维成本,开发成本不在此考虑。
目前该模式下的高考志愿选择系统的数量日益增多,网上进行学生志愿相关信息的查询管理变得平民化普及化,用户人数呈上升趋势,当用户人数庞大了,运维成本可以由广告费进行填补,包括开发成本。
所以经济可行性没有问题。
(2)操作可行性:
此次项目设计参考了几个该模式下网站的开发案例,对他们的操作界面分析,将众多案例结合在一起,突出以人为本简化操作,所以具有基本计算机知识的人都会操作本项目。
因此操作可行性也没有问题。
(3)技术可行性:
技术可行性指的是对于搭建框架的可行性,以及有更优秀的技术出现时系统的技术更新换代的纳新性如何,开发时间成本费用比如何。
现有的Java语言能够迎合所有电子商务系统的搭建,系统技术设备的可扩展性可以由springboot构架的资源优势予以促成。我采用了编译器eclipse+java+mysql用以运行整体程序。
综上所述技术可行性也没有问题。
(4)法律可行性:
从开发者角度来看,springboot框架是网上开源且免费的,在知识产权方面不会产生任何法律纠纷。
从用户使用角度来看,只要不再系统上贩卖违禁品,对系统做出条约协议,杜绝非法支付即可。
综上所述法律可行性也没有问题。
业务流程是用一些特定的符合和线条来进行演示用户在使用系统时的过程,在进行系统分析的时候,业务流程可以帮助开发人员更好的理解业务,发现错误,完善系统。
用户成功登入系统后就能够实现增加数据的操作,增加数据的编号是特定的,系统生成,用户不能随意填写,除了编号以外,其他增加信息用户自己填写,填写后的信息经过系统验证,验证合法通过就显示增加数据成功了,相反的话,就没有增加成功,图3-1显示的就是在增加数据时的流程。
图3-1 数据增加流程图
数据修改时的流程和上面介绍的数据增加时的流程差不多,如图3-2所示。
图3-2 数据修改流程图
如果系统里面存在一些没有用的数据的话,相关的管理人员还可以对这些数据进行删除,图3-3就是数据删除时的流程图。
图3-3 数据删除流程图
按照高考志愿选择系统的角色,我划分为了普通管理模块,社长模块和管理员模块这两大部分。
系统用户管理模块:
(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现学校信息或专业库查看,就必须有这个系统的账号,如果没有账号的话,可以注册成员用户进行相关的操作,同时用户还可以通过“我的”这以按钮对个人信息以及操作的信息进行管控。
(2)查看高考志愿选择系统的首页信息:高考志愿选择系统的首页信息包含了首页、公告消息、校园资讯、专业库、学校信息、我的等。
(3)学校信息:用户点击“学校信息”这个菜单按钮,就会显示所有的学校信息列表,在查询到自己想要的学校信息的时候,可以进入查看详细的介绍,在这个界面,也可以对学校信息进行点赞、收藏、评论操作。
(4)校园资讯:用户点击“学校资讯”这个按钮,就会显示所有的资讯列表,在查询到自己想要资讯信息的时候,可以进入查看详细的介绍,在这个界面,也可以对资讯进行点赞、收藏、评论操作。
(5)专业库:用户点击“专业库”这个按钮,就会显示所有的专业信息列表,在查询到自己感兴趣的专业信息的时候,可以进入查看详细的介绍,在这个界面,也可以对专业详情进行点赞、收藏或备选操作。
(7)公告消息:用户点击“公告消息”这个按钮,可以查看管理员发布的公告信息。
管理员管理模块:
(3)系统用户管理:管理员可以对高考志愿选择系统中的管理员以及前台注册的系统用户进行添加、查询、重置或删除操作。
(4)资源管理:管理员可以对高考志愿选择系统前台展示的校园资讯以及资讯所属的分类进行管控。
(5)模块管理:在“模块管理”这一菜单下,可以对专业库+专业分类+学校信息+备选库这四个子模块进行管控。
高考志愿选择系统的非功能性需求比如高考志愿选择系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:
表3-1高考志愿选择系统非功能需求表
安全性 | 主要指高考志愿选择系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指高考志愿选择系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响高考志愿选择系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着高考志愿选择系统的页面展示内容进行操作,就可以了。 |
可维护性 | 高考志愿选择系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
通过3.3功能的分析,得出了本高考志愿选择系统的用例图:
图3-4就是用户角色的用例展示。
图3-4 高考志愿选择系统用户角色用例图
图3-5 就是管理员角色的用例展示。
图3-5高考志愿选择系统管理员角色用例图
本章主要通过对高考志愿选择系统的可行性分析、流程分析、功能需求分析、系统用例分析,确定整个高考志愿选择系统要实现的功能。同时也为高考志愿选择系统的代码实现和测试提供了标准。
第4章 系统设计
本章主要讨论的内容包括高考志愿选择系统的功能模块设计、数据库系统设计。
本高考志愿选择系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。
图4-1高考志愿选择系统系统架构设计图
表现层(UI):又称UI层,主要完成本高考志愿选择系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本高考志愿选择系统时的舒适度。UI的界面设计也要适应不同版本的高考志愿选择系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。
业务逻辑层(BLL):主要完成本高考志愿选择系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。
数据层(DL):由于本高考志愿选择系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本高考志愿选择系统的数据存储和管理功能。
在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本高考志愿选择系统中的用例。那么接下来就要开始对本高考志愿选择系统的架构、主要功能和数据库开始进行设计。高考志愿选择系统根据前面章节的需求分析得出,其总体设计模块图如图4-2所示。
图4-2 高考志愿选择系统功能模块图
本系统的用户包括管理员系统和用户。两个用户模块的功能基本是相同的,用户比管理员多了一个注册功能,所以以用户模块的结构图为例进行分析,用户模块结构图为例进行分析,如下图:
图4-3用户模块结构图
高考志愿选择系统是一个交流性质的公开平台,用户可以对平台上信息进行评论,增加用户之间的互动性。但是同时也为了更好的规范评论的内容,给予管理员删除不合适的言论的功能,所以需要专门设计一个评论管理模块,具体的结构图如下:
图4-4评论模块结构图
高考志愿选择系统是中需要存储不少学校信息,其模块功能结构,具体的结构图如下:
图4-5社团信息模块结构图
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
下面是整个高考志愿选择系统中主要的数据库表总E-R实体关系图。
图4-6 高考志愿选择系统总E-R关系图
通过上一小节中高考志愿选择系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
(1)ordinary_users表如表3-1所示包含了普通用户注册的信息,用主要用在前台用户来登录高考志愿选择系统时进行使用。
表alternative_library (备选库)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | alternative_library_id | int | 10 | 0 | N | Y | 备选库ID | |
2 | alternative_serial_number | varchar | 64 | 0 | Y | N | 备选序号 | |
3 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
4 | professional_code | varchar | 64 | 0 | Y | N | 专业代码 | |
5 | professional_type | varchar | 64 | 0 | Y | N | 专业类型 | |
6 | affiliated_institution | varchar | 64 | 0 | Y | N | 所属院校 | |
7 | school_code | varchar | 64 | 0 | Y | N | 学校代码 | |
8 | major_courses | varchar | 64 | 0 | Y | N | 主修课程 | |
9 | user_no | int | 10 | 0 | Y | N | 0 | 用户编号 |
10 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
11 | alternative_time | date | 10 | 0 | Y | N | 备选时间 | |
12 | annotation_notes | varchar | 64 | 0 | Y | N | 标注说明 | |
13 | recommend | 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 | 更新时间 |
表article (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 文章描述 |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表professional_classification (专业分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | professional_classification_id | int | 10 | 0 | N | Y | 专业分类ID | |
2 | classification_name | varchar | 64 | 0 | Y | N | 分类名称 | |
3 | brief_introduction | text | 65535 | 0 | Y | N | 简介 | |
4 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
5 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表professional_library (专业库)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | professional_library_id | int | 10 | 0 | N | Y | 专业库ID | |
2 | professional_name | varchar | 64 | 0 | Y | N | 专业名称 | |
3 | cover | varchar | 255 | 0 | Y | N | 封面 | |
4 | professional_code | varchar | 64 | 0 | Y | N | 专业代码 | |
5 | professional_type | varchar | 64 | 0 | Y | N | 专业类型 | |
6 | affiliated_institution | varchar | 64 | 0 | Y | N | 所属院校 | |
7 | school_code | varchar | 64 | 0 | Y | N | 学校代码 | |
8 | major_courses | varchar | 64 | 0 | Y | N | 主修课程 | |
9 | professional_introduction | longtext | 2147483647 | 0 | Y | N | 专业简介 | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表registered_users (注册用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | registered_users_id | int | 10 | 0 | N | Y | 注册用户ID | |
2 | user_no | varchar | 64 | 0 | N | N | 用户编号 | |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | gender | varchar | 64 | 0 | Y | N | 性别 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表school_information (学校信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | school_information_id | int | 10 | 0 | N | Y | 学校信息ID | |
2 | school_name | varchar | 64 | 0 | Y | N | 学校名称 | |
3 | cover | varchar | 255 | 0 | Y | N | 封面 | |
4 | school_code | varchar | 64 | 0 | Y | N | 学校代码 | |
5 | school_area | varchar | 64 | 0 | Y | N | 学校地区 | |
6 | school_features | varchar | 64 | 0 | Y | N | 学校特色 | |
7 | subject_selection_requirements | varchar | 64 | 0 | Y | N | 选科要求 | |
8 | school_official_website | varchar | 255 | 0 | Y | N | 学校官网 | |
9 | enrollment_hotline | varchar | 64 | 0 | Y | N | 招生电话 | |
10 | school_introduction | longtext | 2147483647 | 0 | Y | N | 学校介绍 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | 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 | 更新时间 |
表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 | 更新时间: |
整个高考志愿选择系统的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。
第5章 系统详细设计
高考志愿选择系统的详细设计与实现主要是根据前面的高考志愿选择系统的需求分析和高考志愿选择系统的总体设计来设计页面并实现业务逻辑。主要从高考志愿选择系统界面实现、业务逻辑实现这两部分进行介绍。
当进入高考志愿选择系统的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是轮播图,再往下是各种各样的系统信息,其主界面展示如下图5-1所示。
图5-1 前台首页界面图
不是高考志愿选择系统中正式用户的是可以在线进行注册的,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号+身份+性别+姓名等信息后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图5-2所示。
图5-2 前台用户注册界面图
高考志愿选择系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到高考志愿选择系统的首页中;否则将会提示相应错误信息,用户登录界面如下图5-3所示。
图5-3用户登录界面图
当点击导航栏上的“公告消息”的时候,就会进入对应的界面查看公告消息,公告消息界面如下图5-4所示。
图5-4公告消息界面图
当访客点击高考志愿选择系统中导航栏上的“校园资讯”后将会进入到该“校园资讯”列表的界面,然后选择想要看的资讯,点击进入到详细界面,在详细界面可以收藏+赞+评论等操作,校园资讯界面如下图5-5所示。
图5-5校园资讯界面图
当访客点击“学校信息”后就可以看到所有的学校信息,选择你想要了解的学校信息后将会进入该学校信息的详情界面,可以了解到学校名称、学校地区、学校特色等,同时可以进行“点赞”、“收藏”、“评论”,学校信息详情展示页面如图5-6 5-7所示。
图5-6 学校信息详情界面图
图5-7 学校信息界面图
当访客点击“专业库”后就可以看到所有的专业信息,选择你想要了解的专业信息后将会进入该专业信息的详情界面,可以了解到专业名称、专业代码、专业类型、所属院校、学校代码、主修课程等,同时可以对点击下方的“备选”、“点赞”、“收藏”、“评论”,专业库详情展示页面如图5-8 5-9所示。
图5-8 专业库详情界面图
图5-9 备选界面图
高考志愿选择系统中的管理人员在“轮播图管理”这一菜单中是可以对前台显示的轮播图以及公告栏进行管控。界面如下图5-11所示。
图5-11轮播图管理界面图
高考志愿选择系统中的管理人员在“系统用户管理”这一菜单是中可以对注册的用户以及管理员进行管控,这里以用户管理为例。界面如下图5-12所示。
图5-12系统用户管理界面图
高考志愿选择系统中的管理人员在“资源管理”这一菜单中是可以对高考志愿选择系统内的校园资讯以及资讯分类信息进行维护和管理的,界面如下图5-13所示。
图5-13资源管理界面图
高考志愿选择系统中的管理人员在“模块管理”这一菜单下是可以对高考志愿选择系统内的专业库+专业分类+备选库+学校信息这四个子模块进行管控的,其管理界面如下图5-14所示。
系统测试包括:用户登录功能测试、学校信息展示功能测试、学校信息添加、密码修改功能测试,如表6-1、6-2、6-3、6-4所示:
表6-1 用户登录功能测试表
用例名称 | 用户登录系统 |
目的 | 测试用户通过正确的用户名和密码可否登录功能 |
前提 | 未登录的情况下 |
测试流程 | 1) 进入登录页面 2) 输入正确的用户名和密码 |
预期结果 | 用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入 |
实际结果 | 实际结果与预期结果一致 |
学校信息查看功能测试:
表6-2 学校信息查看功能测试表
用例名称 | 学校信息查看 |
目的 | 测试学校信息查看功能 |
前提 | 用户登录 |
测试流程 | 点击学校信息 |
预期结果 | 可以查看到所有学校信息 |
实际结果 | 实际结果与预期结果一致 |
管理员添加学校信息界面测试:
表6-3 管理员添加学校信息界面测试表
用例名称 | 学校信息添加测试用例 | ||
目的 | 测试学校信息添加功能 | ||
前提 | 社长用户正常登录情况下 | ||
测试流程 | 1)管理员点击学校信息,然后点击添加后并填写信息。 2)点击进行提交。 | ||
预期结果 | 提交以后,页面首页会显示新的学校信息 | ||
实际结果 | 实际结果与预期结果一致 | ||
实际结果 | 实际结果与预期结果一致 |
密码修改搜索功能测试:
表6-4 密码修改功能测试表
用例名称 | 密码修改测试用例 |
目的 | 测试管理员密码修改功能 |
前提 | 管理员用户正常登录情况下 |
测试流程 | 1)管理员密码修改并完成填写。 2)点击进行提交。 |
预期结果 | 使用新的密码可以登录 |
实际结果 | 实际结果与预期结果一致 |
通过编写高考志愿选择系统的测试用例,已经检测完毕用户登录功能测试、学校信息展示功能测试、学校信息添加、密码修改功能测试,通过这4大模块为高考志愿选择系统的后期推广运营提供了强力的技术支撑。
在高考志愿选择系统开发之前,需要先对用户的具体需求进行分析。包括系统的可行性分析、功能需求分析以及其他需求等。在可行性分析过程中,对系统实现的技术性、经济性以及管理等方面进行了分析。总体上证明了系统实施的可行性。
本文总结了高考志愿选择系统实现背景与意义,然后阐述了系统的具体业务需求,并根据系统需求对系统结构以及功能模块等进行了详细地设计,将整个系统划分为多个不同的功能模块。在分析系统功能需求时,对整个系统的总体架构以及功能模块等进行了分析,并选择合适的系统开发技术完成了对各个模块的开发工作。系统开发完成之后进行了部署,同时进行了系统的测试过程,通过测试证明了系统在功能以及性能等方面都达到了预期的要求,具有较高的稳定性与可靠性。
[1]苑津山.新高考两大高考志愿政策:比较、问题及建议[J].西南大学学报(社会科学版),2023,49(03):221-229.DOI:10.13718/j.cnki.xdsk.2023.03.019.
[2]张志云.探究计算机软件开发中Java编程语言的应用[J].信息记录材料,2023,24(04):110-112.DOI:10.16009/j.cnki.cn13-1295/tq.2023.04.003.
[3]田长军.高考志愿填报实操步骤及案例分析[J].求学,2023(07):30-32.
[4]赵将.Java语言在计算机软件开发中的应用[J].数字技术与应用,2023,41(03):160-162.DOI:10.19695/j.cnki.cn12-1369.2023.03.46.
[5]孙浩然,武雪明,吉雪芸.高考志愿智能推荐系统的设计与实现[J].电脑知识与技术,2023,19(09):41-45.DOI:10.14004/j.cnki.ckt.2023.0427.
[6]李志远,姚明菊,魏强.“智愿点津”高考志愿填报辅助系统设计与实现[J].电脑编程技巧与维护,2023(01):123-126.DOI:10.16184/j.cnki.comprg.2023.01.003.
[7]刘明奇,程江珂,陈晓兰.高考志愿填报辅助决策系统的设计与实现[J].现代信息科技,2022,6(17):38-40+44.DOI:10.19850/j.cnki.2096-4706.2022.17.009.
[8]欧阳桂秀.基于Java和MySQL的数据库管理系统的设计与实现[J].信息记录材料,2022,23(09):240-242.DOI:10.16009/j.cnki.cn13-1295/tq.2022.09.007.
[9]王保军.高考志愿填报的有关策略[J].山西教育(招考),2022(Z2):26-27.
[10]冯海明,冯伟.高考志愿填报常见误区[J].山西教育(招考),2022(Z2):28-29.
[11]Yuting Liu. Information Warfare of Chinese College Application[J]. Journal of Educational Research and Policies,2022,4(6).
[12]Shewa Firomsa,Endale Selamawit,Nugussu Gurmessa,Abdisa Jaleta,Zerihun Ketema,Banbeta Akalu. Time to Kidneys Failure Modeling in the Patients at Adama Hospital Medical College: Application of Copula Model.[J]. Journal of research in health sciences,2022,22(2).
[13]白俊杰. 基于混合推荐的高考志愿推荐系统的设计与实现[D].内蒙古大学,2022.DOI:10.27224/d.cnki.gnmdu.2022.001490.
[14]Siyi Liu. Explore Java Language and Android Mobile Software Development[J]. International Journal of Frontiers in Engineering Technology,2021,3.0(2.0).
[15]张玉婷. 基于Java语言和MySQL数据库的固体废弃物数据管理系统的创建[D].内蒙古师范大学,2016.
[16]刘莹莹,潘黎,侯剑华. 我国高考志愿填报研究的热点主题分析[C]//辽宁省高等教育学会.辽宁省高等教育学会2013年学术年会暨第四届中青年学者论坛论文摘要集.辽宁省高等教育学会2013年学术年会暨第四届中青年学者论坛论文摘要集,2013:81.
[17]艾福利,黄崇福,王蔚丹. 高考志愿填报风险评估智联网服务平台[C]//中国灾害防御协会风险分析专业委员会.风险分析和危机反应的创新理论和方法——中国灾害防御协会风险分析专业委员会第五届年会论文集.风险分析和危机反应的创新理论和方法——中国灾害防御协会风险分析专业委员会第五届年会论文集,2012:28-33.
[18]杨哲慜. Java语言的程序漏洞检测与诊断技术[D].复旦大学,2012.
[19]郑陶. 基于平面向量的决策树算法在高考志愿选择系统中的应用[D].辽宁工程技术大学,2010.
[20]柳凤娥.基于高考专业选择的人力资源测评系统开发新探[J].现代经济信息,2009(21):105.
逝者如斯夫,不舍昼夜。转眼间,大学生会员活便已经接近尾声,人面对着离别与结束,总是充满着不舍与茫然,我亦如此,仍记得那年秋天,我迫不及待的提前一天到了学校,面对学校巍峨的大门,我心里充满了期待:这里,就是我新生活的起点吗?那天,阳光明媚,学校的欢迎仪式很热烈,我面对着一个个对着我微笑的同学,仿佛一缕缕阳光透过胸口照进了我心里,同时,在那天我认识可爱的室友,我们携手共同度过了这难忘的两年。如今,我望着这篇论文的致谢,不禁又要问自己:现在,我们就要说再见了吗?
感慨莫名,不知所言。遥想当初刚来学校的时候,心里总是想着工科学校会过于板正,会缺乏一些柔情,当时心里甚至有一点点排斥,但是随着我对学校的慢慢认识与了解,我才认识到了她的美丽,她的柔情,并且慢慢的喜欢上了这个校园,但是时间太快了,快到我还没有好好体会她的美丽便要离开了,但是她带给我的回忆,永远不会离开我,也许真正离开那天我的眼里会满含泪水,我不是因为难过,我只是想将她的样子映在我的泪水里,刻在我的心里。最后,感谢我的老师们,是你们教授了我们知识与做人的道理;感谢我的室友们,是你们陪伴了我如此之久;感谢每位关心与支持我的人。
少年,追风赶月莫停留,平荒尽处是春山。
关注&点赞&收藏&私信博主,免费领取项目源码