现在越来越多的大学生涌进大学,大学生数量越来越多,传统的在教室里老师声嘶力竭式的选课模式缺点越来越明显,效率低,管理难。现在正好赶上了万物互联的互联网时代。学校也为了提高效率,为了更加人性化的服务学生,再加上现在技术的飞跃,设计了这个系统。这个系统的主要有三个角色权限,管理员、老师、学生,系统功能模块包括用户管理、班级信息管理、教师信息管理、学生信息管理、科目信息管理、成绩信息管理。
根据本系统的研究现状和发展趋势,系统从需求分析、结构设计、数据库设计,在到系统实现,分别为前端实现和后端实现。论文内容从系统描述、系统分析、系统设计、系统实现、系统测试来阐述系统的开发过程。本系统力求结合实际找出一种切实可行的开发方案,经过反复研究和学习,借助java编程语言、jsp技术、MySQL数据库和tomcat服务器来完成系统的所有功能,最后进行系统测试,来检测系统的权限和漏洞,从而将系统完善,达到符合标准。

关键字:管理系统,java编程语言,MySQL数据库

ABSTRACT

Now more and more college students rush into the University, the number of college students is more and more, the shortcomings of the traditional course selection mode in the classroom are more and more obvious, the efficiency is low, and the management is difficult. Now it’s just in time for the Internet era when everything is connected. In order to improve the efficiency of the school system, and also to improve the efficiency of the system. This system mainly has three roles: administrator, teacher and student. The system function modules include user management, class information management, teacher information management, student information management, subject information management and performance information management.
According to the research status and development trend of the system, the system from the demand analysis, structure design, database design, to the system implementation, respectively for the front-end implementation and back-end implementation. This paper describes the development process of the system from system description, system analysis, system design, system implementation and system testing. This system strives to find a practical development scheme combined with the reality. After repeated research and learning, it uses Java programming language, JSP technology, MySQL database and Tomcat server to complete all the functions of the system. Finally, the system tests to detect the permissions and vulnerabilities of the system, so as to improve the system and meet the standards.

Key words: Management system,the Java programming language,MYSQL database

目 录

第1章 绪论 1
1.1 选题背景 1
1.2 开发意义 1
1.3 研究内容 1
1.4 论文的组成 2
1.5 本章小结 2
第2章 系统开发技术的介绍 3
2.1 MyEclipse与tomcat简介 3
2.2 HTML/CSS简介 3
2.3 JSP简介 3
2.4 MYSQL数据库概念和特点 4
2.5 B/S结构 4
2.6本章小结 4
第3章 系统分析 5
3.1功能需求分析 5
3.2业务流程分析 5
3.3数据流程分析 7
3.4本章小结 10
第4章 系统设计 11
4.1系统网络架构设计 11
4.2系统总体设计 11
4.3系统功能模块设计 12
4.4数据库设计 13
4.5本章小结 16
第5章 系统的实现 17
5.1主页面的实现 17
5.2登录模块的实现 18
5.3学生成绩录入模块的实现 21
5.4科目管理模块的实现 23
5.5学生管理模块的实现 23
5.6本章小结 25
第6章 系统测试 26
6.1运行环境说明 26
6.2界面测试 26
6.3功能测试 26
6.4测试结果 28
6.5本章小结 28
第7章 总结 29
参考文献 30
致 谢 31

第1章 绪论
1.1 选题背景
几年前,各个学校的学生管理基本上都是靠手工进行,随着各个学校的规模增大,学生人数逐年增加。有关学生管理工作所涉及的数据量越来越大,有的学校不得不靠增加人力、物力来进行学生管理。但人工管理具有效率底、易出错、检索信息慢、对学校的管理提供决策信息较为困难等缺点。学校不能完全掌握每一个学生的学习情况,这样对学校的教学工作是不利的,使学校的教学质量一直停滞。我校尽管部分系已开出学生管理系统,但开发的系统不具有通用性,所以我想借本次毕业设计之际,开发一个不仅适用本校各系而且适用于其它各校的通用学生管理系统,使学校能够充分掌握学生的学习情况,便于学校教学工作的进行和改革。
1.2 开发意义
学生管理是各大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,尤其是学分制、选课制的展开和深入,学生成绩日常管理工作及保存管理日趋繁重、复杂。迫切需要研制开发一款功能强大,操作简单,具有人性化的学生管理系统。
在国外高校,与国内不同,他们一般具有较大规模的稳定的技术队伍来提供服务与技术支持。而国内高校信息化建设相对起步较晚。在数字校园理论逐步应用的过程中,各高校一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但是,由于整体信息化程度相对落后,经费短缺,理论体系不健全等原因,国内高校教务管理系统在机构设置、服务范围、服务质量及人员要求上与国外高校相比都有一定的差距。
纵观目前国内研究现状,在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。因此,教务管理软件应充分依托校园网,实现教务信息的集中管理、分散操作、信息共享,使传统的教务管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教务管理系统和全校信息系统打下良好的基础。
1.3 研究内容
定位好课题所要达到的目标后,就是逐步分析并实现系统了。具体研究内容为:
(1)通过MySQL数据库创建管理员表、用户信息表、成绩表、科目表等;
(2)普通用户实现登录、退出以及用户相关的功能;
(3)管理员通过MySQL语句实现数据录入、修改、更新和插入以及用户账号管理;
(4)系统通过计算机软件对录入的数据进行分析统计;
(5)通过访问后台数据库,实现用户对信息的查询;
(6)整个系统是在Tomcat 服务器上实现的。
1.4 论文的组成
(1)绪论
从开发系统的背景、意义、以及系统的发展状况,详细描述了系统的在哪些方面能得到应用、然后对本章进行总结。
(2)系统分析
概述、用户需求调研、系统业务流程分析、系统数据组成、本章小结。
(3)系统设计
网站系统网络结构设计、系统总体设计、系统功能模块的划分、系统功能模块的需求,数据库设计概述、数据库概述结构设计、数据库逻辑结构设计。
(4)系统开发环境介绍
Microsoft Dreamweaver简介、HTML简介、MySQL简介、JSP简介、数据库概念和特点、本章小结。
(5)系统的实现
登录模块的实现、管理员模块设计、成绩模块的实现、教师模块的实现。
(6)系统测试
系统编码实现后,需要进行测试,测试包括黑盒测试和白盒测试,本系统采用黑盒测试,通过输入不同组的测试数据进行测试的功能模块测试。
1.5 本章小结
本章主要对该系统的选题背景、选题意义,分析本人为什么要做这个系统,和这个系统给人们带来什么好处,有什么作用,以及论文的组成部分,还总述了整个系统的组成及实现的功能。

第2章 系统开发技术的介绍

2.1 JAVA技术

Java语言设计的程序有着可以跨平台,运行效率高,保密性强的特点。Java语言凭借着出色的优点在互联网的编程开发中起到了越来越重要的作用。Java语言可以跨平台运行运行,这种方式给整个开发行业带来了翻天覆地的变化。

Java语言会在新的时代里起到领头大哥的作用,同时该语言也在不断的完善自己,相信可以在未来的互联网开发行业中起到更重要的作用。

2.2 MyEclipse简介

MyEclipse是一款功能强大的集成开发环境,主要用于设计Java,J2EE,这个集成开发环境可以满足对开发的需求,可以配合数据库完成对项目的开发。它对应用程序进行一个整合,其强大的性能大大提高了效率。

在使用java语言进行开发的过程中,MyEclipse是一个强大且优秀的开发环境。优点如下:

支持的语言非常广泛,在开发语言方面,例如C语言,Java语言。在结构上,EE模型,作为WEB开发工具,数据库的服务等一系列的结构或语言都是支持,十分强大。

开发者在开发的过程中常常会遇到各种开源工具不一致的情况,而MyEclipse提供了很多私有且开放的集合,从而解决了这个问题。

开放性,各种语言,各种项目都可以运转,包括各种电脑系统都可以运行。

自身包含很多编辑器,解决很多问题。

效率高,对电脑机器的CPU消耗低。

2.3 Tomcat概述

Tomcat可以用来进行管理Servlet应用的生命周期;将客户端发起的请求url映射到对应的Servlet 上;可以和Servlet程序一起合作,处理HTTP请求。它是Apache推出的轻量级的应用服务器,是一款开源且免费的Servlet容器。可以实现Javaweb程序的装载,是配置JSP和JAVA系统必备的一款环境,运行时有占用系统资源少,扩展性好的特点,且因为Tomcat具有良好的兼容性和安全性,所以在开发和调试JSP程序时,Tomcat成为首选。本网站运用的时Tomcat8.5版本。

2.4 JSP技术

Java Server Pages缩写为JSP, 其脚本语言是Java,它为整个服务器端Java库单元提供了一个用来服务于HTTP的接口。JSP是一种在网页两条命令文件中插入JAVA程序段和JSP标记,从而形成JSP文件。它开发的Web应用系统是一种跨平台的系统,其既可以在Linux下运行,又能在其他各类操作系统中运行。JSP以<% %>的形式实现了HTML语法中JAVA的扩张,JSP也是在服务端运行后反馈给用户端的就是一个动态网页。所以用户只要在客户端使用浏览器就可以使用浏览。JSP不仅是完全面向用户的技术能直接通过页面和用户进行数据交互,还顺应了英特网的所有特点。

JSP可以把网页逻辑与网页实际的显示部分分离,还能够支持可重用的基于组件的设计,这样做不仅不受平台的影响,还能提升Web的应用程序的开发运行速度使之变得更加简单。所以JSP正在逐渐变成建立动态页面的第一个选择。

JSP优势点:

1、只需要编译一次,可以运行在其他任意地方。哪怕系统与环境有了变动,代码部分也不用进行丝毫的更改。

2、多平台支持。几乎在所有的开发平台上都可以进行运行,强大的生命力与行业标准,突破了跨平台的壁垒。

3、强大的可塑性。单台服务器到多台服务器。

4、受到多种强大开发工具支持。扎根于JAVA,而java行业第一设计语言,为他的发展提供了坚持的基础。

5、支持服务器端组件。

6、交互请求中,需要刷新网页,给客户的体验不好。

2.5 MYSQL数据库

本系统中设计到大量的敏感数据,需要特殊设计数据库,需要对数据进行脱敏操作,本次课题开发使用MySQL数据库,MySQL数据库,响应速度快,语句执行逻辑清晰,充分提高了处理数据的效率。Mysql数据库在建立数据表的时候实体属性设计更充分,数据类型更精确,设计出来的数据库更加条理清晰。

MySQL是一个开放源码的关系型数据库管理系统。MySQL所使用的语言(SQL语言)是用于访问数据库的最常用的标准化语言,因为它体积小、速度快、且开放源码的特性,一般网站开发都会选择MySQL作为承载网站数据的数据库。MySQL分为标准版、社区版和企业版。其中最受欢迎的、最常用的是社区版,它遵循了GPL许可协议,庞大、活跃的开源开发人员社区为它提供了支持。利用MySQL创建数据库时,也可以选择一些可视图形化数据库管理工具例如:tomcate,SQLyog。这些工具采用直观的表格的方式,能在创建数据库,创建数据表方面给与帮助。另外数据库连接也十分方便,应用程序可通过ODBC或ADO的方式,经由MyODBC与之连接。

2.6 B/S结构

B/S结构优势非常明显,用户只需使用浏览器就可以访问系统,非常方便。其中B/S架构的特点是易维护,易升级,低成本。模型图如图所示:

学生管理系统 java 学生管理系统Java论文_java项目


图2-1 B/S模式结构图第3章 系统分析

3.1功能需求分析

本系统主要分为几大功能模块,其中包括了系统用户管理、学生信息管理、教师信息管理、科目信息管理、成绩信息管理等功能模块,其中以成绩管理模块最为重要。

该系统包括三大模块:学生模块、管理员模块、教师模块。

1.学生、教师权限

用户登录授权:用户打开登录页面,可以选择教师或学生登录,验证表单正确后允许浏览页面。

修改用户个人信息:学生和老师可以根据个人需要修改自己的信息,包括用户名和上传头像,为了方便管理,学生与老师的用户名与密码采用统一发放式,若需要修改必须进行登录,防止信息泄漏。

查看成绩:学生可以在班级学生管理系统中查看自己的成绩,系统通过匹配学生信息中的学号和学生选择的学期将学生的成绩打印出来。

2.学生基本信息录入

在此输入学生的基本信息包含班级学号、姓名、性别、出生日期、文化程度、籍贯、民族、入学日期等,主要是对学生信息的登记。

3.教师基本信息录入

在此输入教师的基本信息包含教师工号、姓名、性别、出生日期、文化程度、籍贯、民族、主教科目等,主要是对教师信息的登记。

4.科目信息录入.

主要是对学生所学科目信息进行添加、修改和删除。管理员在科目名输入框中输入要添加的科目名称,点击添加按钮。

5.成绩信息录入.

管理员在此窗口输入要选择学生编号和考试编号,系统自动补全数据,然后输入该科考试科目的成绩。如果点击“对已输入成绩进行删除”按钮,则将已经输入的成绩信息删除。老师可以将成绩录入到班级学生管理系统中,老师录入成绩的时候,同时可以对其中的信息进行修改。

3.2 可行性分析

可行性分析的主要目的是对确定题材的项目是不是可以实现以及是否值得去开发,同时可以规避项目在开发中的风险,减少不必要的损失。可行性分析在软件周期中一个必不可少的环节,是规避风险一个很好的方法。并且前期分析也是为下一步的需求分析做好前期的准备。

3.2.1 操作可行性

电脑手机平板等信息化设备普及度非常高,人们对信息化的设备操作越来越熟练,处理信息化的思维逻辑越来越清晰,对电子产品有着很好的认识与理解。所以,用户对此系统的操作与认识不存在太大的问题。百货行业工作者越来越重视效率问题,加强对数据的分析与提取,更好的优化系统。

系统更加出色,用户信息化逻辑清晰,所以用户可以直接上手,无需太多的教程,所以操作可行性没有问题。

3.2.2 经济可行性

本系统是一个小型的模拟网站,经济可行性从估算开发成本以及创造效益上进行分析。在开发成本上主要的经济花销是学生的生活费用,同时使用的软件都是免费的,无需学生额外花销,整个过程在学校中,没有太多的社会花销。在创造效益方面,此推广并使用此系统可以带来更多的消费群体,营业额大大提升,运营成本将会下降,纯利润额会大幅上升。所以,经济的可行性方面基本不会出现问题。

3.2.3 时间可行性

在时间安排上,开发系统所需要的时间是充裕的。从老师发布课题到完成课题,这期间有大量的时间去准备毕业项目。从设计初期对整个开发项目进行背景调查,以及中期的系统分析与实现,到最后的系统测试,充分利用课余课堂时间,所以时间可行性上是可以的。

3.2.4 技术可行性

本网站使用JSP+MySQL+B/S,使用MyEclipse开发,使用Win7操作系统,前端运用了JSP、JS、CSS等技术实现页面的展现,并结合Tomcat服务器进行传输。

本课题使用的技术多数来自大学课程,一小部分来自自行搜索的技术,在实现对数据的增删改查中,充分调动了大学中所使用的开发技术,在实体属性分析的时候充分调用了UML的知识。

3.3业务流程分析

系统的业务流程设计主要包括总体业务流程设计、用户业务流程设计、用户登录业务流程设计、管理员登录业务流程设计和管理员管理业务流程设计,为了使系统业务流程直观易懂,设计如下的系统业务流程图:

1.总体业务流程:以用户的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用个人资料管理、成绩查询、管理等功能操作,以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统用户管理、学生信息管理、教师信息管理、科目信息管理、成绩信息管理等功能操作。具体如下图所示:

学生管理系统 java 学生管理系统Java论文_java项目_02


2.用户登录业务流程:用户将自己的用户名以及密码正确的填写到登录界面上相应位置,点击登录后,系统会将用户输入的信息进行身份验证,如果验证无误的话,那么会显示登录成功,并跳转到相应的页面。具体如下图所示:

学生管理系统 java 学生管理系统Java论文_mysql数据库_03


图3-4 用户登录业务流程图3.管理员管理业务流程:管理员管理系统用户(系统用户录入、删除、修改、登录密码修改)、学生信息管理(学生信息录入、删除、修改)、教师信息管理(教师信息录入、删除、修改)、科目信息管理(科目信息录入、删除、修改)、成绩信息管理(学生成绩录入、删除、修改)具体如下图所示:

学生管理系统 java 学生管理系统Java论文_学生管理系统 java_04


3.4数据流程分析

首先系统用户使用账号和密码等数据就行登录,此时数据流由界面输入流向数据库进行逻辑验证,如果找到该数据记录则进行页面跳转,跳转至系统首页,系统用户在系统内进行数据操作,此时数据流的有效数据流流向数据库中心执行相应的数据sql语句,完成增删改查等操作,最后数据流由数据库中心流向系统界面,进行结果显示。

图3-1所示为数据流图:

学生管理系统 java 学生管理系统Java论文_学校信息管理系统_05


图3-1数据流图(0层图)

数据流图是组织中信息运动的抽象,是信息系统逻辑模型的主要形式,主要作用就是作为系统分析人员和用户进行交流的有效手段。根据学生服务系统的数据流,先得到系统的顶层数据流图,从系统的顶层数据流图可以从系统功能模块上再细分为二层数据流图。

学生管理系统 java 学生管理系统Java论文_学生管理系统_06


图3-3管理员数据流图(1层图)

学生管理系统 java 学生管理系统Java论文_学校信息管理系统_07


学生管理系统 java 学生管理系统Java论文_学校信息管理系统_08


图3-4教师数据流图(1层图)

学生管理系统 java 学生管理系统Java论文_java项目_09


3.5系统应急分析

此分析为极端情况下,对系统各个方面进行一个分析。

系统在运行过程中,若遇到停电状况,本毕业项目系统会进入停机状态,系统的数据是及时保存的,数据没有问题,在恢复供电下,系统会恢复正常。在实际情况下,一般的数据机房都有备用电源,保证服务器的正常运转。

系统抗压分析,毕业课题项目的相应时间在1-3内,在线冲压人数在1500人次左右。系统在这种情况下应保持正常的运行。

系统在前期是模拟订单,不是真正的付款,若是真正的付款,需要由CA认证与电子支付相结合。

3.6界面开发原则分析

用户除了使用系统的功能以外,最重要的是用户第一步时看到系统界面,软件系统界面在设计的时候有以下几个设计原则。

(1)易用性。功能按钮的放置位置应该集中一点,较少用户使用鼠标的距离。界面支持键盘快捷键的时候,例如TAB键。界面的控件不需要太多,

(2)规范性。菜单深度不要超过三层。界面需要适配电脑屏幕尺寸,不要超出屏幕范围内。

(3)美观与协调性。界面配色以柔和为主,不要过于激进。长宽比例应接近黄金比例,不要失调。

(4)独特性。加入一些自己的图表,让用户有区分感。

安全性。开发人员应该考虑到用户因人为的错误导致系统出现问题,应该增加界面设计时的安全性细则,例如,不要使用特殊字符,减少无效数据的输入。

3.7本章小结

本章节在软件开发过程中具有很重要的作用,本章节是对开发系统的可行性进行分析,同时对系统的需求进行详细的分析,并对系统进行一个简洁的流程分析,同时其他开发准则进行总结。第4章 系统设计

4.1系统设计思想

根据需求分析以设计出系统功能需求。系统程序代码阶段以高内聚低耦合为设计原则,功能实现模块化,减少功能交集,梳理清楚业务逻辑。系统前台界面美观大方,符合人们日常使用习惯。数据库设计需要考虑数据的安全性,可靠性,冗余等问题。以及相关表的关联关系的迁移。

4.2总体框架

学校信息管理系统根据功能需求分为3个不同的角色,分配不同的权限。业务逻辑上主要是对数据的新增与核实。后台管理员可以实现对用户系统信息的管理。管理员权限很高,业务逻辑上是对数据的增删改查。功能模块图如图所示:第4章 系统设计

4.1系统设计思想

根据需求分析以设计出系统功能需求。系统程序代码阶段以高内聚低耦合为设计原则,功能实现模块化,减少功能交集,梳理清楚业务逻辑。系统前台界面美观大方,符合人们日常使用习惯。数据库设计需要考虑数据的安全性,可靠性,冗余等问题。以及相关表的关联关系的迁移。

4.2总体框架

学校信息管理系统根据功能需求分为3个不同的角色,分配不同的权限。业务逻辑上主要是对数据的新增与核实。后台管理员可以实现对用户系统信息的管理。管理员权限很高,业务逻辑上是对数据的增删改查。功能模块图如图所示: