2024年1月31日发(作者:)
基于JSP高考志愿智能选择系统的实现
摘 要:随着我国科技技术的进步,计算机在我们的学习生活中有着越来越多的应用,互联网技术对我们的学习也有着重大的帮助,如高考志愿填报,每年高考结束同学们都要在短时间内找到适合自己的学校,由于时间短暂且要根据自己的分数来选择学校,需要对该分数段的学校进行筛选,有效获取综合信息。因此在大数据共享的情况下设计出一个便于学生利用已有的信息来进行高效的择校和优秀的择校,旨在能为考生和考生家庭解决一些实际问题,本系统采取mysql作为后台数据的主要存储单元,采用ssm框架,JSP技术来实现高考志愿的智能选择,帮助学生进行志愿填报。
关键词:SSM框架;JSP技术;高考志愿智能选择;
第一章 绪论
1.1课题背景和意义
1.1.1课题背景
高考是每个人都要经历的一件人生大事,随着义务教育的全国普及,越来越多的人可以接受到高等教育的教学,因此每年都会有许多高三学子踏入高考的考场。教育行业自从1977年重新恢复高考制度之后得到了迅速发展,四十多年来一直在迈步前进,参加高考的考生人数也在年年攀升,除却学生人数的增长,还有全国各高校的建立也逐步增多,由此可见高考教育的欣欣向荣之态。而在高考结束需要进行高考志愿填报,高考志愿填报对于学生来说是人生一次新的重要选择,许多学生高考结束之后需要在短时间内根据自己的分数、目标院校的地理位置以及自己的专业兴趣爱好等来进行志愿填报选择自己的理想院校。由于填报的时候信息获取太过于杂乱,无法有效地从海量信息中获取对自己有益的信息,并且其可靠性和真实性无法确保,从而会出现有高分的学生没有被录取,选了一个自己不感兴趣的专业等现象,导致自己在大学四年学习中缺乏对专业的热爱,或者又重新回到高中复读等情况。因此,根据自身情况合理的选择一个好的学校、好的专业将对学生未来发展有着极为重要的影响。
本系统旨于为学生提供真实、可靠的高校信息,根据学生的分数来智能推荐可填报的高校,让学生在有限的时间里面有效的选择出自己感兴趣、未来发展前景好的专业。
1.1.2课题意义
本系统的意义在于:
为进行高考志愿填报的考生们提高真实可靠的高校信息。解决学生获取的信息有限且部分信息不可靠不真实,在虚假高校信息上浪费时间等问题。
为学生们提供科学的填报方案,根据学生的高考分数智能推荐高校,并有详细的高校信息,减少盲目填报、跟风填报的现象出现。
降低在志愿填报出现的高分滑档、重新复读的现象,在一定程度上提高报录比、降低复读率的问题。
希望学生在进行志愿填报过程中,确定好自己未来的发展方向,制定清晰的人生规划,积极面对学校生活和未来的社会,能通过自身所学专业尽快融入到快速发展的社会
生产中去。
1.2当前研究状况
1.2.1目前高考志愿填报中存在的问题
目前高考志愿填报中存在的问题:
(1)对自己所感兴趣的专业目标不明确。学生们在高考结束后就要在短时间内进行志愿选择,大部分同学对自己要选择的专业没有太多头绪,有两方面问题:一是完全不知道自己要选择什么专业,往哪个方向发展;二是有想要选择的专业,但是对自己的专业认知不够,只是简单了解。从而导致在志愿填报后出现填报志愿不满足学生意愿的情况。
(2)存在着许多不可靠高校信息。大部分考生以及家长在志愿填报时都是根据自己以往听到过或者在某些平台看到的高校信息,而这些信息过于杂乱无章,且无可靠来源,有真实数据作为支撑,从而影响志愿选择。
(3)填报过程中可能出现盲目跟风的现象。由于在短时间内考生及考生家长进行志愿填报,对高校信息了解不够全面,信息量有限的情况下,容易出现不根据学生自身的情况,盲目报考名校、选择热门专业,从而导致高分无书读。
1.2.2当前高考志愿填报平台现状
互联网快速发展的时代,信息技术也融入到教育行业当中,高考志愿智能选择系统也纷纷涌现,有大量的受众即大量的市场需求,在每年的高考季节都会有大量的学生和家长使用该类型的系统软件,它们一般扮演着“第三方”的决策,根据已有的信息有效的向学生及其家长进行志愿院校推荐,但是有些系统平台缺乏真实可靠的信息来源。
1.3本课题研究路线
基于JSP高考志愿智能填报系统实现面对学校/学生用户开发,学校将学校情况、专业录取等情况发布在系统网站上面。学生通过浏览改网站,获取各高校信息、录取信息等进行志愿填报,找到自己满意的高校及专业。
本系统利用MVVM模式进行开发,采用SSM框架作为开发框架,前端使用JSP技术开发设计网页,论文着重描述了系统开发技术,通过系统分析来确定系统大体功能并展开后续的开发设计。系统完成之后该系统在特定条件下对系统重要模块进行模拟测试,证明了系统的可靠性和可用性。
第二章 开发技术及框架
2.1 SSM框架
2.1.1 SSM框架介绍
SSM框架集(Spring+SpringMVC+MyBatis)是由三个开源框架整合而成,SSM框架是采用的MVC设计模式,它通常被作为数据源比较简单的web项目的框架,大大缩减了web系统的开发时间。
2.1.2 Spring
Spring作为开源框架,是一个在2003年兴起的轻量级Java开发框架。目的是为了减少企业应用开发的复杂性。它改变了有些事情只能够由EJB完成的状态,使其改变成能通过基本的JavaBean来完成。当然,Spring并不只是用来开发服务器端,由于Spring的简单性、可测试性以及松耦合这三个优点,Spring可以说能够让任何Java应用都可以从中受益。
Spring能够简化程序开发、解耦更加方便,是因为其提供的IOC特性。通过该特性,IOC容器能够建立对象之间的依赖关系之后统一管理,从而达到松耦合的目的;Spring通过AOP特性实现事务、日志以及权限的控制相对来说更为容易。同时,Spring框架支持与其他开源框架的集成,如SSM框架。然而,Spring使用配置文件会导致终端程序的逻辑不直观,同时会增加系统的开发和维护工作。
Spring就像是项目中的一个装配有bean的大工厂,在配置文件中通过使用特定的参数实例化对象的构造方法来调用实体类,这个也可以称之为项目中的黏着剂。
Spring目标在于使用Spring时更为简单、使程序代码不依赖于Spring APIs以及致力将现有的解决方案与spring框架相结合。
2.1.3 Spring MVC
SpringMVC将用户请求在项目中拦截,它的核心Servlet即DispatcherServlet充当中介或者前台这样的角色,并将用户请求通过HandlerMapping去匹配Controller,Controller即为相对应请求需要执行的操作。SpringMVC相当于SSH框架中的struts。
2.1.4 mybatis
mybatis完成了对JDBC的封装,它让数据库底层操作变的透明化。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis与各实体类的Mapper文件通过配置文件相关联,Mapper文件中包含了每个类为数据库所做的SQL映射。每次与数据库交互时,通过sqlSessionFactory接收sqlSession,并执行SQL命令。
页面向需要调用业务层进行逻辑处理的控制器发送请求,逻辑层向与数据库交互的持久层发送请求,然后将结果返回到业务层,业务层处理逻辑后发送给控制器,再由控制器通过视图来显示数据。
图2.1
2.1.5 ssm框架各层关系
DAO层、Service层这两个层次很少相互耦合,可以单独开发,完全独立进行,这种模式在大型项目的开发过程中特别具有优势。
Controller,View层必须要一起开发,因为它们的耦合程度相对比较高。然而,它可以独立于前两个层作为一个整体进行开发。通过这种方式,在层与层之前只需要了解接口的定义,所需的逻辑单元应用即可通过调用接口来完成,这就显得十分的清楚和简单。
Service层是建立在DAO层之上的,建立了DAO层后才可以建立Service层,而Service层又是在Controller层之下的,因而Service层应该既调用DAO层的接口,又要提供接口给Controller层的类来进行调用,它刚好处于一个中间层的位置。每个模型都有一个Service接口,每个接口分别封装各自的业务处理方法。
2.2 MySQL数据库
信息科技的飞速发展,许许多多科技已经开始融入到我们日常生活中,带来了许多便利,数据库的应用对我们的学习工作都有很大的帮助:如在图书馆需要记录每天的借阅书籍情况,如在超市中需要记录每天的货物进出情况,这就需要一个信息仓库,这个信息仓库就是数据库,超市商品管理系统也需要这项技术的支持。
用MySQL这个软件,是因为它能接受多个使用者访问,而且里面存在Archive等。为了能够灵活地运用数据库,提高数据管理自身的速度,它会先对数据分类,接着将数据分别保存到表里。MySQL许多特点,可以适用于许多场景,不仅支持多种开发平台、安全性高,而且MySQL数据库存储的容量大,尤其是MySQL的代码是公开的,而且允许别人二次编译升级,这极大地减少了使用者的成本。虽然它有缺点,但是综合各方面来说,它是使用者的主流运用的对象。
2.3 B/S结构
B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题。
B/S体系工作原理:
B/S架构采取浏览器请求,服务器响应的工作模式。
由Web服务器产生的消息文本、数据、图像、动画、视频和声音等可以被用户通过浏览器来进行访问。
而每个Web服务器可以从许多不同的方式连接到数据库服务器,数据库服务器中又存储着大量的数据;
从Web服务器上下载程序到本地来执行,用数据库服务器来解释执行下载过程中遇到的数据库指令,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。
在B/S模式中,用户请求通过网络上的许多服务器访问浏览器,通过服务器处理浏览器的请求,并将结果和相关信息返回给Web服务器处理的浏览器。通过这种框架结构以及植入到操作系统中的浏览器,这种结构模式成为现代软件应用程序的主流。
2.4 JSP技术
JSP(Java Server Pages)是在Java编程语言Servlet规范之上建立的动态网页开发技术,可以看作是一个简化的servlet。它将动态页面与静态页面成功分离,在JSP文件中,HTML和Java代码共同存在。其中,通过HTML代码来实现网页中静态网页内容,Java代码则用于实现页面中需要的数据的逻辑处理以及网页中动态内容。
JSP的运行原理:第一次请求jsp页面时,先翻译成servlet的java文件,编译成class文件,运行解释成html页面, 将html响应给客户端
再次请求jsp时,查找class文件,运行解释成html页面,将html响应给客户端。
Jsp的优点在于编写简单,运行方便,一次编写能够进行多次使用,拥有Java编程语言的特点。JSP 技术在代码迁移过程、电子商务、安全性以及代码重用方面更占优势。在用户访问时 JSP 页面早就被编译,这样一来也就提升了访问效率。它的适用平台更加广泛。
第三章 系统需求分析
3.1系统概述
3.1.1非功能性需求
首先主要考虑的是系统功能软件,在具体设计的环节上,是不是能够较好的满足各类用户的基本功能需求,如果不能较好的满足用户需求,那么这个系统的存在是没有价值的。软件系统的非功能性求分析,从7个方面展开,一个是性能分析,针对系统;一个是安全分析,针对系统,一个是完整度分析,针对系统,一个是可维护分析,针对系统,一个是可扩展性分析,针对系统,一个是适应业务的性能分析。面对高考志愿智能选择与系统存在的性能、安全、扩展、完整度等7个方面性能综合比对分析后发现,需要相应的非功能性需求分析。
3.1.2功能性需求
基于JSP的高考志愿智能填报系统部分功能如下:
对于普通学生用户:注册登录、浏览学校信息、在线填报等。
对于系统管理员:专业推荐、专业分类、发布学校信息等。
设计一个美观、简洁、易操作的用户界面,用户通过界面之间的交互接收浏览相关信息。
3.2可行性研究
开发任何一个系统,都要对其可行性进行分析,对其时间和资源上的限制进行考虑,这样可以减少系统开发的风险。同时,分析之后不仅能够合理的运用人力,还能在各方面资源的消耗上得到节省。下面就对技术、经济和社会三个方面来介绍。
3.2.1技术可行性
本系统采用SSM框架与JSP页面相结合,数据库使用MySQL数据库存储数据。前端使用JSP技术开发,后端利用SSM框架技术。这两种技术都相较于成熟,而且应用较为广泛,JSP技术开发的页面还具有可重用的特点,能够满足系统速度快,可靠性好等需求,而SSM框架又能够保证系统运行的稳定性,所以本系统在技术可行性上可行。
3.2.2经济可行性
由于本课题中设计的高考志愿智能选择系统主要是为了可以更加简单便捷地就进
行学校信息的查询管理等检索服务,即信息化软件能够直接使用。系统的主要成本主要是集中在对使用数据后期继续维护及其管理更新这个操作上。这个系统在投入到实际的运用之后就可以更好地提高信息查询检索的效率,但是需要注意的一方面是要保证查询着信息的安全性,由于高考志愿填报受众非常广泛,有大量的需求市场,因此这个系统的价值是大于实际系统进行开发和维护的成本的,由此可见,在经济方面来说,这个系统是可行的。
3.2.3社会可行性
本系统设计的主要任务是在高考志愿智能选择系统内实现校园信息、专业分类、专业推荐、填报记录功能等,符合当前潮流的发展。从用户角度出发,同时也考虑系统运营成本和人力资源,采用网络上的便捷方式,实现线上业务,使得业务流程更系统,也更方便用户的体验,比较实用。
3.3功能需求分析
高考志愿智能选择系统的功能主要分为前台用户根据自己的需求进行注册登录,浏览学校信息、专业信息并可以在线进行专业填报。后台系统管理员主要对用户信息、专业推荐、专业分类、填报记录进行管理等。
系统用例图如下所示。
图3.1 系统用例图
3.3.1前台学生用户功能
期望能实现的前台学生用户的功能如下:
注册登录:用户填写个人信息,并验证手机号码进行账户注册,注册成功后方可登录系统。
学校信息:用户可以在线上进行学校信息浏览等。
维护个人信息:用户因个人信息的变更可以随时修改自己注册信息。
交流论坛:用户在线进行交流论坛发布操作。
专业信息:用户可以对专业信息进行查看了解等。
专业填报:用户可以进行专业填报操作。
学校资讯:学校资讯浏览。
3.3.2后台管理员功能
期望能实现的管理员功能如下:
修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。
用户管理:对注册的用户信息进行维护管理等。
学校信息管理:对学校信息,维护,添加、删除、修改信息。
交流论坛管理:对用户发布的交流信息进行维护管理。
专业信息管理:对不同专业信息进行维护管理。
填报记录管理:对学生提交的专业填报记录进行维护管理。
学校资讯管理:对资讯进行发布管理。
3.4安全性需求分析
3.4.1数据的安全性
在外界数据输入数据库是,因为许多原因,有些输入的数据是无效的,或者是脏数据,所以,数据库系统需要关注的问题是如何保证输入的数据符合规定,这一问题对多用户的关系数据库系统尤为重要。
因此,在写入数据库时,要保证数据完整性、正确性和一致性。
3.4.2系统的安全性
安全性对每一个系统来说都是非常重要的。安全性很好的系统可以保护学校的信息和用户的信息不被窃取。提高系统的安全性不仅是对用户的负责,更是对学校的负责。尤其针对于高考志愿智能选择系统来说,必须要有很好的安全性来保障整个系统。
系统具有对使用者有权限控制,针对角色的不通限制使用者的权限,以此来确保系统的安全性。
3.5数据流程分析
对系统的数据流进行分析,系统的使用者分为二类,一般用户(学生),管理员。系统主要对界面信息传送,登录信息的验证,注册信息的接收,用户各种操作的响应做处理。
系统顶层数据流图如下图所示。
用用用用用用用用用用用用用用用图3.2 顶层数据流图
用用用用用用用
要判断用户是是什么身份,是根据登录的数据来判断后,跳转到对应的功能界面。
在系统的内部用户就可以对数据进行操作,数据库中心就可以接收到系统传输的有效数据流来对数据sql语句进行对应操作。
系统底层数据流图如下图所示。
P1用户管理F1输入信息P2D1用户表F1输出信息注册登录P3学校信息管理P4F2输入信息P4D2学校表F2输出信息学校信息P0P5登陆管理员信息用户登录学校资讯管理信息匹配F3输出信息P6P0登录信息F3输入信息D3资讯表资讯浏览学生用户登录P7P8专业信息管理F4输入信息D4专业表F4输出信息专业查看P9P10填报记录管理F5输入信息D5填报表F5输出信息志愿填报P11交流论坛管理P12F6输入信息D6论坛表F6输出信息论坛发布 图3.3 底层数据流图
系统可以分为前台和后台两部分,每一种操作后系统都返回操作结果。前台和后台的数据连接主要通过数据库,既分别对数据库做不同的操作。
第四章 系统总体设计
4.1系统架构设计
高考志愿智能选择系统的架构设计主要分为可以3层,主要有Web层,业务层,Model层。其中web层还包括View层和Controller层,Model层包括元数据扩展层和数据访问层。
系统架构如下图所示。
MVVM是通过抽象View的状态和行为,将视图UI与业务逻辑分离。当然,ViewModel已经为我们做过了这些事,它可以从Model中提取数据,同时帮助处理View中因为要显示内容所涉及的业务逻辑。它将应用程序的输入、输出和处理完全分开,并将其划分为具有不同功能的三个核心部分。
图4.1系统架构图
视图层视图是一个用户可以看到并能够与之交互的界面。视图可以向用户提供相关数据,并接收用户输入的数据,但不执行任何对用户数据的实际操作处理。
模型层处理视觉层传递的数据是通过控制层,相同的模型可以为不同的视图提供数据,也可以被不同的视图重复使用。因为Model的基本内容是数据、方法和行为,这也是MVVM中代码量最多、逻辑最为繁复的部分,在一定程度上包含了
许多应用程序中使用的业务逻辑,因此建立开发模型层也变得特别重要,后期模型层大规模的改变一般不会出现,这也是MVVM最稳定的部分。控制层主要负责视觉层和模型层之间的数据传输和处理。当用户通过视图发送数据和请求时,控制层可以接收请求和数据,并决定使用哪些模型和操作来处理数据和请求,数据会在处理完成之后由控制层返回给相应的视图。
4.2系统总体设计
高考志愿智能选择系统总体分为前台学生用户模块和后台管理员模块。
两个模块表现上是分别独立存在,但是访问的数据库是一样的。根据之前完成的需求分析,查阅相关的资料后整理制作的模块的功能。
综上所述,系统功能结构图如下图所示。
学校资讯学校信息学生专业信息专业填报高考志愿智能选择系统交流论坛管理员用户管理专业分类管理填报记录管理学校信息管理交流论坛管理
图4.2 系统功能结构图
4.3系统功能设计
登录注册模块:用户通过注册账号进入到系统,系统会将用户登录的账号保存到数据库中。已有账号的用户可以直接通过登录页面输入自己的账号密码直接
登录到系统。登录成功之后,根据相关的用户角色来访问数据库获取权限,跳转到相应的角色页面。
根据不同的角色页面有不同的功能:
前台学生用户功能模块:
(1)学习信息搜索功能:用户登录到系统之后,根据可以浏览查找学校信息,浏览专业信息,浏览学校的最新状态,招生情况。学生用户可以通过这个功能来了解自己想要报考学校和专业的详情。
(2)填报功能:学生用户登录页面之后对自己的想要报考的学校和专业有了一定的了解之后,可以进行填报功能。
(3)交流功能:学生用户可以在交流论坛页面发布消息看法和志同道合的同学进行交流,发表自己的看法。
后台管理员功能模块:
(1)用户管理功能:管理员可以对管理登录系统的用户进行管理,维护用户登录数据。
(2)校园信息数据功能:可以分为校园信息浏览、校园信息建设、校园信息数据维护,管理员可以在系统发布最新学校信息、专业信息等,也可以进行删除修改等操作,更新校园信息,对专业信息进行分类管理,管理员可以对校园信息数据进行管理和维护。管理员可以查看所有用户发表的交流信息,实时监控舆情热点,并对信息数据进行管理。
管理员可以查看所有用户的填报信息,对用户提出的修改填报申请进行管理。
4.4数据库设计
4.4.1数据需求分析
从前面可以分析到数据库中最重要的是用户信息、校园信息、专业信息、专业填报、交流论坛等。分析可以得到部分数据描述:
平台用户:用于记录用户的各种信息,包括姓名、性别、手机、邮箱、照片等数据项。
管理员:记录管理员的登录信息。包括用户名,密码,权限等数据项。
校园信息内容:存放给校园信息的内容。
专业推荐:学生信息、学生姓名、推荐学校、推荐专业、推荐原因等数据项。
交流论坛信息:用户进行交流信息发表等数据项。
4.4.2 ER图
根据前面的数据流程图,结合系统的功能模块设计,设计出符合系统的各信息实体。
系统ER图如下图所示。
管理n专业推荐n查看11管理员1发布n学校信息n浏览1学生
图4.3系统ER图
图4.4学校信息属性
图4.5专业推荐属性
图4.6学生用户属性
4.4.3 数据库表的设计
大量的数据存储在数据库中,数据库的设计是尤为重要的,是信息系统的核心,是系统能够很好运行下去的一个基础。它为系统提供了存储、维护还有检索信息数据的功能,可以使我们通过系统更加方便的获取我们想要的、存储在数据库中的数据。
高考志愿智能选择系统所建立的数据表有下:
(1)用户信息表:用于存储记录用户账号信息,在下次登录时,通过对比数据库中的信息记录可以判断1.用户的账号信息是否输入正确;2.用户是否已经存在,如果存在,且用户输入的账号密码是正确的,用户即可以直接登录;如果用户不存在,即数据库中没有相应用户账号信息的记录,用户需要注册账号,
才能登录进入到系统,而系统也会自动存储用户信息到数据库。用户信息表包括学生用户ID、学生姓名、学生性别、意向专业等属性。用户信息表建表如下:
表4.1 用户信息表
名称
student_user_id
student_name
student_gender
intended_major
examine_state
recommend
user_id
create_time
update_time
类型
int
varchar
varchar
varchar
varchar
int
int
datetime
timestamp
长度
11
64
64
64
16
11
11
0
0
不是null
是
否
否
否
是
是
是
是
是
主键
是
否
否
否
否
否
否
否
否
注释
学生用户ID
学生姓名
学生性别
意向专业
审核状态
智能推荐
用户ID
创建时间
更新时间
(2)校园信息表:用于保存院校信息。一般有学校信息ID、学校名称、所在城市、专业信息、招生人数、咨询电话等属性。校园信息表建表如下:
表4.2 校园信息表
名称
school_information_id
school_name
city
professional_information
cover_photo_
enrollment_score
enrollment
consultation_telephone
school_address
school_profile
hits
recommend
create_time
update_time
类型
int
varchar
varchar
varchar
varchar
varchar
varchar
varchar
text
longtext
int
int
datetime
timestamp
长度
11
64
64
64
255
64
64
64
0
0
11
11
0
0
不是null
是
否
否
否
否
否
否
否
否
否
是
是
是
是
主键
是
否
否
否
否
否
否
否
否
否
否
否
否
否
注释
学校信息ID
学校名称
所在城市
专业信息
封面图片
招生分数
招生人数
咨询电话
学校地址
学校简介
点击数
智能推荐
创建时间
更新时间
(3)专业推荐表:通过学生填报的学校,智能推荐可供学生选择的系统。专推荐表建表如下。
表4.3 专业推荐表
名称 类型 长度
professional_recommendation_id int
student_information int
不是null
11 是
11 否
主键
是
否
注释
专业推荐ID
学生信息
student_name
recommended_schools
recommended_major
recommended_description
recommend
create_time
update_time
varchar
varchar
varchar
text
int
datetime
timestamp
64
64
64
0
11
0
0
否
否
否
否
是
是
是
否
否
否
否
否
否
否
学生姓名
推荐学校
推荐专业
推荐描述
智能推荐
创建时间
更新时间
(4)专业信息表:保存专业信息,建表如下。
表4.4 专业信息表
名称
professional_classification_id
professional_information
recommend
create_time
update_time
类型
int
varchar
int
datetime
timestamp
长度
11
64
11
0
0
不是null
是
否
是
是
是
主键
是
否
否
否
否
注释
专业分类ID
专业信息
智能推荐
创建时间
更新时间
(5)填报记录表:学生用户进行志愿填报后,系统将填报数据储存到数据库中。填报记录表一般包括:学生姓名、学生性别、学校名称、专业信息等属性。填报记录表建表如下。
表4.5 填报记录表
名称
filling_records_id
school_name
city
professional_information
student_information
student_name
contact_number
recommend
create_time
update_time
类型
int
varchar
varchar
varchar
int
varchar
varchar
int
datetime
timestamp
长度
11
64
64
64
11
64
16
11
0
0
不是null
是
否
否
否
否
否
否
是
是
是
主键
是
否
否
否
否
否
否
否
否
否
注释
填报记录ID
学校名称
所在城市
专业信息
学生信息
学生姓名
联系电话
智能推荐
创建时间
更新时间
(6)论坛交流表:保存用户交流信息。一般包括用户ID,论坛ID,正文内容等属性。论坛交流建表如下。
表4.6论坛交流表
名称
forum_id
display
user_id
类型
mediumint
smallint
mediumint
长度
不是null
8 是
5 是
8 是
主键
是
否
否
注释
论坛id
排序
用户ID
nickname
praise_len
hits
title
keywords
description
url
tag
img
content
create_time
update_time
avatar
type
varchar
int
int
varchar
varchar
varchar
varchar
varchar
text
longtext
timestamp
timestamp
varchar
varchar
16
10
10
125
125
255
255
255
0
0
0
0
255
64
否
否
是
是
否
否
否
否
否
否
是
是
否
是
否
否
否
否
否
否
否
否
否
否
否
否
否
否
昵称:[0,16]
点赞数
访问数
标题
关键词
描述
来源地址
标签
封面图
正文
创建时间:
更新时间:
发帖人头像:
论坛分类
第五章 系统实现
5.1 注册模块的实现
用户进入系统,之前没有登录过该系统的用户需要注册账号进行登录,用户在进行账号注册时,需要注意一下和注册要求一致,用户的账号不能为空,用户两次输入密码要一致,用户在填写自己的邮箱时要按照格式来进行填写,邮箱必须要带有@符号,在填写完所有信息之后进行登录注册可以进入到页面,相关的用户数据就会保存到数据库中。
用户注册流程图如下图所示。
开始Y注册失败接收注册信息数据是否为空YN两次密码是否一致NY查询数据库用户名是否被占用N注册成功结束
图5.1用户注册流程图
用户注册界面如下图所示。
图5.2注册页面
图5.3注册页面
图5.4注册页面
5.2 登录模块的实现
在登录页面,如果用户存在,即用户曾经使用过该系统,注册过账号,那么用户只需要输入自己的账号密码进行登录,有三个要求:1.用户名必须正确;2.用户密码正确;3.账号和密码必须要匹配。如果用户在登录过程中,账号或者密
码两者输入有一个及以上输入为空,则系统就会提示“用户名,密码不能为空”。用户输入正确的账后和密码之后,点击登录,系统就会匹配到存储在数据库中的用户信息,显示登录成功,否则就登录失败,直到输入正确的账号密码之后。如果用户不存在,则要跳到注册页面,进行注册之后将用户信息存储到数据库中,才能登录系统。
登录流程图如下图所示。
开始N登录失败登录账号是否存在NY密码是否正确Y登录成功结束
图5.5登录流程图
用户登录界面如下图所示。
图5.6登录页面
图5.7登录页面
用户登录的逻辑代码如下所示。
图5.8
图5.9
图5.10
5.3学校信息管理模块的实现
该页面可以对学校信息进行管理。可以对学校信息进行浏览查看,发布最新的学校资讯,管理员对学校数据进行增删查改,并保存数据库中,更新数据库中存储的学校数据信息。
学校信息管理流程图如下图所示。
开始登录信息核对是否管理员YN查看、添加、删除、修改等结束
图5.11学校信息管理流程图
5.4交流论坛模块的实现
用户通过这一页面,在系统网站发表自己的意见,在该页面中,用户通过在文本框里编辑自己想要说的话点击提交就可以发布自己的交流意见。
5.5专业推荐管理模块的实现
此页面的关键是编写专业推荐,包括学生信息、推荐描述信息等。单击提交按钮以完成信息的添加。如果未写入完整的专业推荐信息,例如,如果未写入推荐学校,系统将给出相应的错误提示,并且无法成功输入。管理员点击左侧菜单“专业推荐管理”,页面跳转到专业推荐管理外观,调用后台专业推荐查询所有专业推荐信息。
5.6填报管理模块的实现
用户通过该页面可以进行志愿填报,提交志愿填报信息之后,相关数据信息就会保存到数据库中。
第六章 系统测试
6.1测试目的
对任何系统而言,测试都是必不可少的环节,测试可以发现系统存在的很多问题,所有的软件上线之前,都应该进行充足的测试之后才能保证上线后不会Bug频发,或者是功能不满足需求等问题的发生。下面分别从单元测试,功能测试和用例测试来对系统进行测试以保证系统的稳定性和可靠性。
6.2功能测试
下表的测试用例是对学校信息管理功能,测试学校信息管理增删查改功能是否能够成功运行,通过观察系统的响应情况,来判断该功能是否也达到了设计的目标要求。
表6.1 学校信息管理的测试用例
测试用例编号
功能描述
测试目的
前置条件
测试数据以及操作
(1)进入学校信息管理页面:输入学校信息:学校名称、学校地址、招生人数、专业详情等信息,点击发布
(2)进入学校信息管理页面:删除学校信息
(3)进入学校信息管理页面:点击某个学校进行学校信息修改,输入新的信息数据,点击发布
(4)点击搜索学校信息,输入存在的学校信息名
(5)点击搜索学校信息,输入不存在的学校信息名
TREL01
管理学校信息
检测学校信息发布的运行情况
管理员登录系统
期望的结果 实际结果
发布学校信息成功,与预期结果一致
成功入库
删除学校信息成功,与预期结果一致
成功修改数据库
修改学校信息成功,与预期结果一致
成功修改数据库
查找出学校信息
不显示学校信息
与预期结果一致
与预期结果一致
下表的测试用例是对交流论坛管理功能的测试,测试了交流论坛管理中对交流论坛信息的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。
表6.2 交流论坛管理的测试用例
测试用例编号
功能描述
测试目的
前置条件
测试数据以及操作
(1)点击添加交流论坛,必填项合法输入,点击保存
(2)点击添加交流论坛,必填项输入不合法,点击保存
(3)点击修改交流论坛,必填项修改为空,点击保存
(4)点击修改交流论坛,必填项输入不合法,点击保存
(5)点击删除交流论坛,选择交流论坛删除
(6)点击搜索交流论坛,输入存在的交流论坛名
(7)点击搜索交流论坛,输入不存在的交流论坛名
TREL02
用于交流论坛管理
检测交流论坛管理时的各种操作的运行情况
用户登录系统
预期结果 实际结果
提示添加成功 与预期结果一致
提示必填项不能为空 与预期结果一致
提示必填项不能为空 与预期结果一致
提示必填项不能为空 与预期结果一致
提示删除成功
查找出交流论坛
不显示交流论坛
与预期结果一致
与预期结果一致
与预期结果一致
总 结
互联网信息技术迅猛发展的时代,IT软件已经融入到我们的生活,每一行业都使用到了相关的计算机技术对日益放大的数据进行管理。该课题是高考志愿智能选择为核心展开的,旨在帮助高考考生能够选择出自己满意的院校和专业。
目前本系统已经完成学生登录注册,查询学校信息、进行专业填报、发布学校信息等功能。使用本系统可以使学生和管理员更好的接受和管理海量信息,意在可以帮助用户解决求学等问题。系统投入运行时,各功能均运行正常。系统的每个界面的操作符合常规逻辑,界面友好,方便使用者进行操作,整个系统的各个功能设计合理,体现了人性化。
但是由于自己在系统开发过程中对一些用到的相关知识和技术掌握不够牢固,再加上自身开发经验欠缺,因此系统在有些方面的功能还不够完善,考虑的不够全面,因此整个系统还有待日后逐步完善。
本文发布于:2024-01-31 09:45:11,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170666551127619.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |