学生信息管理系统
摘要
本次毕设利用开发工具Idea,使用数据库MySQL进行存储,后端使用Java语言进行功能开发技术,Java作为当前较为流行的移动端软件开发语言,提供了众多基于Java语言开发的组件,最终实现本系统的所有功能。开发一款学生信息管理系统。在21世纪,互联网的快速发展,计算机技术的多元化业务出现,使得各行各业都开始发生技术变革。传统学生信息管理大量的人力和物力。因此,针对这个问题,本次毕设研究探索了学生信息管理,通过系统作为技术载体实现。
学生信息管理系统具有良好广泛的应用场景,利用它来实现校园档案管理网络化是未来的一个趋势,随着计算机技术的发展和完善,它的功能将会得到进一步地完善和发展。在后期的测试系统中,学生信息管理系统基本实现了预期的所有功能,系统性能稳定和运行正常,基本达到了基本要求。
关键词:Java;Idea;MySQL
Abstract
This design uses the development tool idea, and the back-end uses Java language for function development technology. Java, as a more popular mobile software development language, provides many components developed based on Java language, and finally realizes all the functions of the system. Develop a student information management system. In the 21st century, with the rapid development of the Internet and the emergence of diversified businesses of computer technology, technological changes have begun to take place in all walks of life. Traditional student information management involves a lot of manpower and material resources. Therefore, in view of this problem, this research explores the sale of idle goods, which is realized through the system as a technical carrier.
Student information management system has a good and wide range of application scenarios. Using it to realize the networking of campus archives management is a trend in the future. With the development and improvement of computer technology, its function will be further improved and developed. In the later test system, the student information management system has basically realized all the expected functions, the system performance is stable and runs normally, and has basically met the basic requirements.
Key words: Java;Idea;MySQL
目 录
1 绪论
1.1 课题研究背景和意义
学生信息管理系统为一个能够通过处理信息的库系统,通过利用编程语言封装好的库函数能够编码实现学生信息管理系统,这样有助于提高程序开发者的编程效率,降低学生信息管理系统的开发成本,互联网行业的迅速发展已经为学生信息管理系统发展奠定了基础[1]。管理员的手工服务已经不能够满足现在用户的需求。随着互联网行业的快速发展,学生信息管理需要突破传统的模式,学生信息管理系统通过利用计算机技术和联系用户的需求,提供信息化的服务,这有助于简化学生信息管理系统并提高其安全性。由于大数据时代的来临,信息系统的数据存储量相比于之前要大得多。在互联网时代有必要开发一套操作操作简单和数据存储安全的系统[2],这样不仅可以方便用户使用系统且管理员能够管理系统的信息。
1.2 国内外现状分析
互联网始于二十世纪,经过了多年的发展,发展得相对完善,基本可以实现计算机对学生信息管理系统的数据进行管理。到了现今学生信息管理系统有了很大的变化,我国学生信息管理系统发展速度快了非常多,当时推出了在国内影响较大的自动化处理系统,自动化系统能够体现出社会分工的不同,使得学生信息管理系统的管理员能够专注于系统质量的提高。在这之前呢,学生信息管理系统发展速度相对来说比较慢,无论是技术还是理论研究上都没有很大的突破。国外发展学生信息管理系统的速度要明显快于我国,当时的学生信息管理系统由大型科技公司开发,学生信息管理系统因此由单一变为集成的系统。更加新型的学生信息管理系统虽然还没有出现,但是随着互联网行业的发展,人们有了新的需求,因此有良好的和数据库可以使得管理员的工作效率有所提高[4]。
1.3 课题研究主要内容
(1)本次针对学生信息管理系统提出实现方案,按照软件开发的一般流程进行前期的调研和分析确定软件是否能够正常实现、技术是否可行和系统功能模块的设计开发,最后确定了使用的技术和实现系统的方案。
(2)SSM框架属于一种程序开发者实现的功能集合,可以帮助软件开发者快速构建软件层次架构和复用功能的一款工具,本平台框架使用了SSM开源框架,具有比较好的开发优势,可以帮助软件开发者快速构建基本的程序开发框架出来,通过调用SSM开源框架开源帮助程序开发者减少开发难度,提升了学生信息管理系统的安全和稳定性,能够帮助程序开发者完成系统功能模块的开发和数据的处理。
2 核心技术
2.1 Java语言
Java是一种计算机编程语言,在Java中包含了非常多的基础代码包,覆盖了许多的信息,许多功能不必从头开始实现,只需要调用Java封装包中的方法即可,Java编程语言能够完成网页后端的主要逻辑处理代码,Java是一个较为完整的平台,包含了非常多库,包含的很多代码都是可重用的,Java还提供了一个高安全性,可移植性和自动回收的一个环境。
2.2 MySQL数据库
市场上流行着非常多的数据库,包括了MySQL和Oracle数据库等,不同的关系型数据库具有各自的特点。ORACLE数据库相比于MySQL具有很大的不同,在安装上要较为复杂和占用空间相对要多得多,并且Oracle数据库想要使用的话需要程序开发人员付费。如果用户访问的数量达到百万级别的话,学生信息管理系统使用数据库Oracle比MySQL则要好得很多
2.3Maven架构
Maven是项目管理工具中的一种,系统的开发不只是写代码,在开发实现的过程当中往往伴随着其它的事情,比如:
(1)工程量大的项目要引进比较多的jar包,所以在本系统要引入jar包。有可能jar包和版本会冲突在用手动的情况下。
(2)我们要把代码变成二进制字节码在写Java程序的时,电脑才能够读取到数据,集成开发工具能够完成此环节。
(3)系统开发实现之后还需要进行单元测试,这样有助于提高代码的质量。
Maven可以完成以上这些工作,通过pom.xml文件能够引入jar包,编译代码的同时还能够自动对系统单元测试。
2.4 SpringMVC
SpringMVC是一种web层mvc框架,它是spring的一个模块,拥有spring的特性。SpringMVC分离了控制器、模型对象、分派器以及处理程序对象的角色。SpringMVC框架是在MVC模式作的改进,隶属于Spring框架的一个子框架。如果在开发Web项目的时候使用到了Spring框架,那么还可以组合使用SpringMVC框架。SpringMVC的工作流程为用户发起请求的时候,需要被web.xml里面配置的DispatcherServlet进行拦截用户的请求并进行处理,通过HandlerMapping还可以匹配到对应的适配器,适配器可以调用对应的控制器进行处理,处理后的数据通过页面显示给用户。
2.5 Spring
Spring框架的业务处理可以通过javabean完成。开发人员过去常常使用大量的EJB开发模式来开发应用程序,但是使用Spring框架,开发人员可以使用Spring而不是EJB框架。Spring可以以高效的方式设计相应的应用程序。Spring框架可以组合各种开源框架来形成软件应用程序。
Spring Core模块可以实现Spring框架的基本功能。这个模块包含一个核心组件Beanfactory,Beanfactory能够将程序和配置进行分离。Spring Context能够提供运行的环境保存各对象的状态。Spring AOP模块能够支持应用实现面向切面的编程。
2.6 MyBatis
在应用程序开发的过程中,我们希望通过Java数据访问到数据库通过加载驱动程序和其他操作来获取数据库连接,然后通过连接对象来操作数据,一旦数据使用的程序很大,Java代码操作变得很麻烦,很不方便。框架是这个问题的一个很好的解决方案。随着开源框架的不断更新,程序开发人员操作数据库变得更加简单。MyBatis是一个不错的选择。2013年,该项目从Apache Software Found迁移过来。
2.7 Apache服务器概述
Apache服务器属于Web服务器中的一种,是一个网络开源服务器,在安全性上也较有保障,程序员们广泛使用并且在此基础上作修改。Apache很大的一个特点为能够跨平台,操作系统的兼容性也比较强,Linux属于较稳定的系统。另外,由于Apache服务器具有执行效率高和运行速度快的特点,属于比较优秀的服务器软件。
3 需求分析
3.1 可行性分析
可行性分析是指在开发项目之前分析学生信息管理系统的可行性,从诸多方面进行分析,例如技术、经济和社会等方面的问题,目的是减少未来开发学生信息管理系统遇到的困难[4]。由于学生数量众多,每日各种数据量是比较大的,依靠手工操作的记录很难达到及时性和准确性,因而有必要建立一个学生信息管理系统。
3.1.1 社会可行性
随着计算机技术的的飞速发展,计算机在系统管理中的应用越来越大,利用计算机实现各个系统的管理显得越来越重要。时至今日,我国网络用户的数量还在不断增长中,学生信息保存发生了变化,对信息交流需求变得更高了,每次变革都是为了人民而便利,以方便、快捷、简单为原理节省每次交流信息的时间成本。本次开发的学生信息管理系统没有违法并且没有违反道德,从法律道德上来说是可行的。
3.1.2 技术可行性
随着当今计算机的快速发展,计算机硬件性能和存储能力在不断地提高,价格确在不断地下降,完全能够满足本系统对数据存储和处理的要求。根据前期对学生信息管理系统功能的分析和确定,最终确定使用可行的开源框架和软件结构完成学生信息管理系统的开发。系统在设计实现的时候选用的软件和开发技术为程序开发者所经常使用的,结合市场上同种类型的学生信息管理系统,本次开发的学生信息管理系统在技术上是可行的。并且能够在开发出可用的学生信息管理系统前提下做到较低的开发成本。此次开发的学生信息管理系统有形成的系统可以参考,因此后期技术升级和维护有一定的保障[5]。
3.1.3经济可行性
学生信息管理系统从需求分析到最后设计实现的时候花费的时间不多,经济花费相对不是很多,学生信息管理系统需要运行的时候只需要一台普通的电脑即可,只要安装有必要的软件环境即可以运行系统。管理员在操作学生信息管理系统的时候相对简单,因此有更多的时间可以花费在修改系统的功能上。
3.2 非功能需求
学生信息管理系统在设计的时候需要注意非功能性需求,还要满足系统业务流程的需要。
软件系统随着事件的推移需要更新系统,本学生信息管理系统也不例外,如果需求发生了改变,那么就需要调整系统的功能。如果采用的是面向对象程序设计方法,那么可以使用接口编程技术,严格遵循软件开发规范,最后对系统进行修改的时候会具有较高的适应性。
3.3 功能性需求
3.3.1 用例概述
用户:首页、修改密码、课程列表、我的成绩、我的绩点。
管理员:首页、老师信息、学生信息。
老师:后台首页、修改密码、学生信息、课程信息、成绩信息、绩点统计
图3-1 管理员用例图
图3-2 用户用例图
图3-3老师用例图
用例的简要描述如表3.1所示。
表3-1 用例描述
用例标识(UC) | 用例名称 | 摘要描述 |
1 | 注册登录 | 用户和管理员通过登录功能才得以使用系统的功能 |
2 | 查看课程列表 | 用户登录系统之后可以查看课程列表 |
3 | 查看我的成绩 | 用户登录系统之后可以查看我的成绩 |
4 | 查看我的绩点 | 用户登录系统之后可以查看我的绩点 |
5 | 密码修改 | 用户和管理员登录系统之后可以修改个人信息 |
6 | 课程列表管理 | 管理员在课程列表管理功能中管理课程列表的信息 |
7 | 老师管理 | 管理员在老师管理功能中管理老师的信息 |
8 | 学生管理 | 老师在学生信息管理功能中管理学生的信息 |
9 | 绩点统计管理 | 老师在绩点统计管理功能中管理绩点统计的信息 |
10 | 我的成绩管理 | 老师在我的成绩管理功能中管理我的成绩 |
3.3.2 用例描述
1.课程列表管理
课程列表管理用例描述能够描述系统中的课程列表管理功能,课程列表管理用例描述如表3-2所示。
表3-2 课程列表管理用例描述
用例标识 | 01 |
用例名称 | 编辑课程列表的相关信息 |
参与者 | 老师 |
前置条件 | 老师需要输入正确的用户名和密码登录系统 |
后置条件 | 修改课程列表 |
用例概述 | 老师修改课程列表 |
基本事件流 | 1.老师输入正确的用户名和密码登录到系统当中 2.老师在课程列表管理界面点击添加按钮提交新添加的课程列表 3.课程列表添加成功 |
备选事件流 | 4a 输入的信息需要合法才能够成功添加 |
备注 |
2.老师管理
老师管理用例描述能够描述系统中的老师管理功能,老师管理用例描述如表3-3所示。
表3-3 老师管理用例描述
用例标识 | 02 |
用例名称 | 删除绩点统计的相关信息 |
参与者 | 管理员 |
前置条件 | 管理员需要输入正确的用户名和密码登录系统 |
后置条件 | 删除老师 |
用例概述 | 管理员删除老师 |
基本事件流 | 1.管理员输入正确的用户名和密码登录到系统当中 2.管理员在老师管理界面点击删除按钮提交删除的老师 3.老师删除成功 |
备选事件流 | 4a 删除的老师需要跟其它表没有关联才能够删除 |
备注 |
3.登录
登录用例描述能够描述系统中的登录功能,登录用例描述如表3-4所示。
表3-4登录用例描述
用例标识 | 03 |
用例名称 | 登陆 |
参与者 | 用户、管理员 |
前置条件 | 用户和管理员需要输入正确的用户名和密码 |
后置条件 | 登录 |
用例概述 | 用户和管理员登录 |
基本事件流 | 1.用户和管理员进入到登录页面当中 2.管理员和用户输入用户名和密码登录到系统当中 |
备选事件流 | 4a 输入的信息需要和数据库信息相匹配才能够登录 |
备注 |
4.我的成绩管理
我的成绩管理用例描述能够描述系统中的我的成绩管理功能,我的成绩管理用例描述如表3-5所示。
表3-5 我的成绩用例描述
用例标识 | 04 |
用例名称 | 编辑我的成绩的相关信息 |
参与者 | 老师 |
前置条件 | 老师需要输入正确的用户名和密码登录系统 |
后置条件 | 修改我的成绩信息 |
用例概述 | 老师修改我的成绩信息 |
基本事件流 | 1.老师输入正确的用户名和密码登录到系统当中 2.老师在我的成绩管理界面点击添加按钮提交新添加的我的成绩信息 3.我的成绩信息添加成功 |
备选事件流 | 4a 输入的信息需要合法才能够成功添加 |
5.密码修改
密码修改用例描述能够描述系统中的密码修改功能,密码修改用例描述如表3-6所示。
表3-6密码修改用例描述
用例标识 | 05 |
用例名称 | 密码修改 |
参与者 | 用户、管理员 |
前置条件 | 用户和管理员需要进入到密码修改页面中 |
后置条件 | 修改个人信息 |
用例概述 | 用户和管理员管理个人信息 |
基本事件流 | 1.用户和管理员进入到登录页面当中 2.用户和管理员输入用户名和密码登录到系统当中 3.在密码修改页面中修改自己个人信息 |
备选事件流 | 4a 只有输入的信息合法才能够成功修改 |
备注 |
6.学生管理
学生管理用例描述能够描述系统中的学生管理功能,学生管理用例描述如表3-7所示。
表3-7学生管理用例描述
用例标识 | 06 |
用例名称 | 学生 |
参与者 | 管理员 |
前置条件 | 管理员需要进入到学生管理页面中 |
后置条件 | 管理学生信息 |
用例概述 | 管理员管理学生信息 |
基本事件流 | 1.管理员进入到登录页面当中 2.管理员输入用户名和密码登录到系统当中 3.进入学生页面中管理信息 |
备选事件流 | 4a 只有点击相应的按钮才能够管理 |
备注 |
7.绩点统计管理
绩点统计用例描述能够描述系统中的绩点统计管理功能,绩点统计管理用例描述如表3-8所示。
表3-8绩点统计管理用例描述
用例标识 | 07 |
用例名称 | 绩点统计 |
参与者 | 用户 |
前置条件 | 用户需要进入到绩点统计页面中 |
后置条件 | 管理老师 |
用例概述 | 用户管理老师 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入绩点统计页面中管理信息 |
备选事件流 | 4a 只有点击相应的按钮才能够管理 |
备注 |
8.查看课程列表
查看课程列表用例描述能够描述系统中的查看课程列表功能,查看课程列表用例描述如表3-9所示。
表3-9 查看课程列表用例描述
用例标识 | 08 |
用例名称 | 查看课程列表 |
参与者 | 用户 |
前置条件 | 用户需要登录 |
后置条件 | 查看课程列表 |
用例概述 | 用户查看课程列表 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入课程列表列表界面 |
9.查看我的成绩
查看我的成绩用例描述能够描述系统中的查看我的成绩功能,查看我的成绩用例描述如表3-10所示。
表3-10 查看我的成绩用例描述
用例标识 | 9 |
用例名称 | 查看我的成绩 |
参与者 | 用户 |
前置条件 | 用户需要进入到我的成绩详情页面中 |
后置条件 | 查看我的成绩 |
用例概述 | 用户查看我的成绩 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入我的成绩详细页面中 |
10.查看绩点统计
查看绩点统计用例描述能够描述系统中的查看绩点统计功能,查看绩点统计用例描述如表3-11所示。
表3-11 查看绩点统计用例描述
用例标识 | 10 |
用例名称 | 查看绩点统计 |
参与者 | 用户 |
前置条件 | 用户需要登录 |
后置条件 | 查看绩点统计 |
用例概述 | 用户查看绩点统计 |
基本事件流 | 1.用户进入到登录页面当中 2.用户输入用户名和密码登录到系统当中 3.进入我的绩点界面 |