诚信申明
本人申明:
我所呈交的本科毕业设计(论文)是本人在导师指导下运用四年专业知识进行的研究工作及全面的总结。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中创新处不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京化工大学或其它教育机构的学位或证书而已经使用过的材料。与我一同完成毕业设计(论文)的同学对本课题所做的任何贡献均已在文中做了明确的说明并表示了谢意。
若有不实之处,本人承担一切相关责任。
本人签名: 年 月 日
学生学籍管理的设计与实现
摘 要
学生学籍管理是教育教学单位不可缺少的部分,它的内容对教学管理和学校的决策者都非常重要。给学校教学管理提供了很大的方便性,提高了工作效率。但是一直以来人们用传统人工的方式管理文件文档,这种管理方式效率低,保密性差,出错不易更改,同时也耗费了大量的人力财力,时间一长,将产生大量的文件数据,这对于查找维护,更新都带来了很大的困难。
21世纪是信息产业的时代,全球信息电子化的潮流势不可挡,计算机被广泛应用使我们的经济和社会生活因此发生了深刻的变革。与此同时,我国的教育事业蓬勃发展,升学率普遍提高,各类学校校规模不断扩大,对于学生管理工作的高效性和规范性提出了更高的要求。使用计算机可以方便的对大量数据进行增加、删除、更新等操作。它有着人工管理永远无法比拟的优点, 检索迅速、查找方便、可靠性大、存储量大、保密性好、寿命长、成本低等。当然,这些都离不开数据库技术和网络技术的支持。学校的学生学籍信息管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要。为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时准确地获取需要的信息,充分发挥人员的工作潜力。
因此,不难想象正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱。同时,编写一套完善的学生学籍管理系统的任务就显得尤为重要,学生学籍管理系统就是数据库在网络上应用。
关键词: 独立学院 学生管理 管理体制 计算机信息
The Design and Implementation of School Management System
——used for teachers
Abstract
Students Information Management System is indispensable part of the education department. It is very important to the teaching management and decision makers. It provides a lot of convenience and improves work efficiency. However, for a long time, people used the traditional Student Information Management System. The traditional method gets many disadvantages: low efficiency, bad privacy protection, easily to make mistake. It wastes lots costs of human and financial capital, producing massive document data. These would take great difficulties for the management.
21st century is the age of information industry. Computers are the main equipments in our daily economic or social life because of the global information technology. Meanwhile, Chinese education enterprise get vigorous development: graduation rates generally improved, all kinds of school scale unceasingly expands. Traditional Students Management gets harder because of the high quantity of students. So the New Students Management should be more efficiency and standard. Using the computer can be convenient for large data increasing, deleting, updating, and operating. It has incomparable virtues that manual administration can never get: searching quickly and easily, reliability, high storage capacity, better secrecy, long service life, low cost and so on. These are inseparable from the database technology and network technology support. The Students Information Management is the school management status as one of the important tasks, the former manual operation already can not adapt to the needs of the office now. In order to get rid of tedious work and improve working efficiency, we should make computer information processing become inevitable. Developing the perfect function and safe and reliable management system can greatly improve the utilization rate of school.
Keywords : Student Management Software Engineering B/S Browser
目 录
前 言 ..................................................... 1
第1章 课题研究价值 ......................................... 2
第1.1节 选题背景 ........................................... 2
第1.2节 开发的目的和意义 ................................... 2
第1.3节 课题简介 ........................................... 3
第2章 可行性分析 ........................................... 5
第2.1节 技术可行性分析 ..................................... 5
第2.2节 经济可行性分析 ..................................... 6
第2.3节 运行可行性 ......................................... 6
第3章 需求分析 ............................................. 7
第3.1节 功能需求 ........................................... 7
第3.2节 性能需求 ........................................... 8
第3.3节 系统数据需求 ....................................... 8
第3.4节 系统用例图 ......................................... 9
第3.5节 系统UML 活动图 .................................... 11
第4章 系统分析 ............................................ 12
第4.1节 编程语言选择 ...................................... 12
第4.2节 数据库及接口的选择 ................................ 14
第4.3节 应用服务器选择 .................................... 17
第4.4节 开发工具选择 ...................................... 18
第5章 数据库设计 .......................................... 19
第5.1节 数据库连接 ........................................ 19
第5.2节 数据库表的结构 .................................... 20
第5.3节 实体及E-R 图 ...................................... 22
第5.4节 数据字典 .......................................... 23
第5.5节 数据流图 .......................................... 24
第6章 详细设计 ............................................ 26
第6.1节 整体布局及功能描述 ................................ 26
第6.2节 登陆管理 .......................................... 27
第6.3节 学生信息管理模块 .................................. 28
第6.4节 院系管理模块 ...................................... 29
第6.5节 班级管理模块 ...................................... 30
第6.6节 管理设置模块 ...................................... 31
结 论 .................................................... 33
参考文献 .................................................... 34
致 谢 .................................................... 35
前 言
随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必经之路。
学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得了参加学习的资格。学籍是组织管理学生的客观依据。但传统的学籍管理模式和管理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序,阻碍教学改革的深化,难以保证该项工作应具有的严肃性。
20世纪末,随着我国计划生育的不断普及和深入,入校人数正逐步下降,而各个学校的规模却在不断扩大,校与校之间的合并规模也越来越大,而此时计算机在各学校也开始普及,一些学校开始将计算机应用到学生信息的管理中去,为学生管理信息系统的形成打下了坚实的基础。
学生学籍管理系统,旨在探索一种以互联网为平台的管理模式。这种新的管理模式,为现代管理创造了一种新的环境,使教务管理突破时空限制,实现管理的网络化,提高管理效率和标准化水平。使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行管理与查询。这还让管理者从繁重的工作中解脱出来,将主要精力转移到创造性的教学改革工作中。
目前学籍管理的现状是处于半手工版信息管理阶段。学校虽然组织成局域网,但仍没有完整的系统,计算机网络优势也未得到发挥。因此目前学生学籍管理系统存在的问题,如未完全实现信息管理化,基本上是半人工办计算机的阶段,学校领导未能及时得到学生信息的反馈,所以不能及时的进行指导学习等活动,对教育质量也有所影响,系统功能较少,系统不稳定,易丢失数据,系统开放性不够,大部分学校学籍管理系统对学生开放时间有限,学生学籍系统网络性不强,各部门之间信息渠道单一,不利于互相交流,协调工作。
第1章 课题研究价值
第1.1节 选题背景
现在的社会日新月异,学校的发展也需要与时俱进。学生的数量越来越大,学籍资料更换频率频繁。手工数据管理,资料存放在多处,没有统一管理模式,整理不便,统计困难,劳动量大,却质量低下,错误频发。由此可见,手工管理模式的缺点日益凸显。
当前,学生学籍管理的弊端主要表现在两方面:第一,工作繁杂、工作量大、错误率高;第二,缺乏监督体系和控制手段。学籍管理的政策性很强,应该严格按照上级部门的有关政策和规定办事,然而,由于传统的学籍管理模式缺乏有效的监督措施,使有关部门的政策规定难以得到及时准确的贯彻执行,使学籍管理工作完全失去了应有的严肃性,给学校的人才培养质量带来了严重的影响,也给社会带来了很大的负面影响。
随着教育体制改革,学生管理正在逐步迈向管理信息现代化。学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。可是我国学生管理信息化水平并不高。学生学籍管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
第1.2节 开发的目的和意义
提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。满足学校领导、教育管理单位、学生管理人员、教师和学生的不同层次和不同方面的需要。为学校将来的整体信息化建设提供必要的支持。总之,通过该系统的建设来提高学校学生
学籍管理效率,使得学校的发展能够适应当前的教育信息化建设的总体发展趋势。
因此,开发一个功能完善、操作简单、界面友好、有针对性的学籍管理系统对学校、乃至社会都是非常必要,非常有意义的。
以现代计算机技术、网络技术为基础的数字化教学正朝着信息化、网络化、现代化的目标迈进。如今,国内的大部分学校都已接入或将要接入互联网并建成校园网,各校的硬件设施已经比较完善,通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理,从而实现教育的网络化和信息化[1]。与网络技术相结合的新型学生学籍管理模式,对教育、教学过程有着极为宝贵的特性,可以为新型的办学模式提供一个信息化的平台。
当前市场上学生学籍管理方面软件较多,但一般都是单机版,没有实现连网功能。而就现在学生学籍信息管理的发展趋势,以及学校跨校区延伸管理和二级学院分级管理的实际情况,这种单机版的管理软件并不是很实用。市场上学生学籍管理的软件侧重于记录学生的基本情况,其基本功能已不太适合现在规模扩大的广大学校。随着学校办学规模的扩大、专业设置和学生人数的逐年增加,原本基于小型数据库的、半手工操作、单机版的学生学籍管理系统已经难以适应当今广大学校的发展要求,而应用先进的信息网络技术建立一套完整、规范的学生学籍信息资料计算机管理学籍,以便快捷地录入、统计、查询、检索学生的各类信息,及时了解学生的学习情况、使不同校区、二级学院、系部的分级管理达到资源共享,协同管理,实现管理信息现代化、规范化和科学化的学籍管理系统是现代学籍信息管理系统的发展趋势。它还必须具备使用方便,界面简洁,学校的管理人员很容易操作和使用的特点。相信这种学生学籍管理软件会得到广大学校和广大学生信息管理人员的青睐。
由于本系统管理的对象单一,都是学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
第1.3节 课题简介
学生学籍管理趋向于复杂化和多元化,随着计算机技术的广泛运用,越来越多的高校对学生学籍的管理采用了数字化模式。查询、修改、录入、删除等基本操作都采
用了计算机数据库技术。比起以前使用人工繁琐的工作,和效率低下的卡片模式有了很大的进步,管理更加方便,更新更加简易及时,极大的优化了学生学籍的管理工作。
此次研究的目标是设计出一个供高校使用的基于MyEclipse 平台设计的学生学籍管理系统,编程语言为Java 。具体设计内容包括整体布局(模块划分),系统功能的设计(学成成绩查询,学生信息查询,教师信息查询,用户登录与退出,对用户信息可进行添加、删除等功能),以及数据库的建立。本次采用的方法、技术或设计工具包括:MyEclipse 软件开放平台,MySQL [2]建立信息数据库,使用Java 语言和控件链接数据库。本文档是用来定义需求说明、系统的功能描述以及相关业务流程,是我们小组进行项目开发的基础和依据。
系统的使用者为高等院校的管理人员,他们对学生的学籍进行整体的管理以及资料维护。
系统开发的目的是为了提高学籍管理的工作效率、实现数据的数字化、联网办公,我们立项开发此项目。
目标是可以实现对院校基本信息进行管理,如院系管理,专业管理,班级管理;以及对本校全体学生的基本信息和学籍进行管理和维护。
基本术语为学生信息(学号,姓名,出生年月,籍贯等等),院校信息(高等院 校名称,二级院校,二级院校的名称,专业信息)。
在系统开发过程中要对基本的版本信息及名称情况进行描述,以构成完整的系统信息。如表1.1所示。
本系统(学生学籍管理系统)采用B/S,即浏览器/服务器两层架构,管理人员的工作不受地理空间的限制。管理人员可以实现学生信息录入,学生信息修改和删除,以及与学生相关的信息的操作(注:本系统所有的操作均需要用户登录才有权限进行相关的业务操作,前台用户不能做任何事情。)
第2章 可行性分析
可行性分析是系统分析阶段的第二项活动,它的主要目是进一步明确系统的目标、规模与功能,对系统开发背景、必要性和意义进行了调查分析并根据需要和可能提出开发系统的初步方案与计划。可行性分析是对系统进行全面、概要的分析。
第2.1节 技术可行性分析
本系统利用现有的人力和物力开发出来的,作为阶段性产品,日后的发展空间大,实现方法逐步简单容易,并且开发本系统所使用的语言及设计平台,成熟稳定,经过多方面验证。Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC 、数据中心、游戏控制台、科学超级计算机、移动电话互联网。此次设计所使用的数据库是MySQL ,具有可伸缩性和可用性,企业级数据库功能以及易于安装部署和使用的特点。而是用的开发工具是MyEclipse 。这是一个十分优秀的用于开发Java 的Eclipse 插件集合,功能强大,支持也十分广泛,尤其对各种开源产品的支持十分不错。因此通过物力人力来分析,学籍管理系统在技术上是完全可行的。随着计算机技术发展到了一个新的时期,网络技术在十几年的发展过程中已日臻完善,而基于WEB 的数据库技术也已经十分成熟。在语言方面ASP ,PHP ,Java 也用事实证明了其强大的功能,还有微软最引以为豪的.NET 技术,更显示了在基于网络的应用中的强劲优势。至此,一种基于网络的、管理方便的、反应迅速的、具有交互性的学生管理信息系统应运而生了。
新式的学生管理系统采用了最新的数据库系统结构:B/S结构。这种基于B/S结构的学生管理信息系统在应用中显示了明显的优势。
数据库结构的规划是应用程序设计中一个非常重要的环节。学生学籍管理系统要处理与表现的数据量较多,若使用传统的方式来完成任务,可能会事倍功半,甚至有些任务还无法完成;学生学籍系统的设计开发,需要一套完善的数据库管理系统[3]。对于数据库系统的选用,如果所建立的是私人的Intranet ,则可以使用Access 等桌
面型数据库,但是像学生学籍系统这样需储存大量的数据和用户的系统设计,则需使用较大型的数据库,例如:SQL Server、Oracle 、Informix 、DB2、Sybase 等。本文的设计则应用到MySQL 。
第2.2节 经济可行性分析
经济可行性分析中最重要的内容之一是成本--效益分析。计算机发展到今天,价格低,功能强大。本系统的开发可以代替人工进行许多繁杂的劳动,节省资源,减少人工开支,提高学生管理工作的效率,节省资金。同时还能具有较高的安全性。同时本系统所消耗资源小,学校的电脑都能够满足,使教学质量更上一个台阶。开发及后期维护费用几乎可忽略不计,由于操作简单,实用性强,不需要进行高费用的专业培训。因此本系统可属于低成本,高效益的结合体,在经济上是可行的。
第2.3节 运行可行性
本系统界面大方,操作方便,无需专业指导,就可轻易上手。无论是系统管理人员还是教师,均能进行操作,营运环境要求底。
面对系统设计还应该以“标准型、安全性、高效性、保密性、可维护性”为基准,在着眼于当前实用的基础上,为将来系统的扩展,升级留有余地。软件的开发应能在较长的时间内满足学校的发展需要。
标准型要系统的编写与运行必须符合标准,既可以保证系统正常运行,又可以保证在此标准上,系统的每项功能运行良好。
可靠性指学籍信息至关重要,因此所编写的系统务必稳定可靠,从而避免或减少不必要的数据损失,防止对教学管理造成不便。
安全性是指控制使用者的用户权限,通过限制其权限,达到系统的安全要求,从而保证使用者无法操作与其无关的数据。
高效性是校学生信息量较大 ,因此系统对信息的处理能力和响应能力都应该是快捷有效。
可维护性是采用结构化模块设计,便于开发与维护,有利于系统的不断更新。
第3章 需求分析
第3.1节 功能需求
为方便学校做好学生学籍管理工作,设计一个学生学籍管理系统,在设计过程中作了系统分析和总体设计,软件设计采取模块化的设计思路。
该学生学籍管理系统主要对学生学籍信息、成绩信息进行管理,提供一个平台,供学籍管理人员增删改查学生信息、学生成绩信息。系统分为学生信息管理、学生成绩管理、信息查询等几个模块。学籍管理人员登录成功后可以对学生信息管理、学生成绩管理、信息查询等模块进行操作,如学生信息添加、修改、删除和查询;学生成绩登记、修改、删除和查询;查询信息等。
在“学生学籍管理系统”开发时应该满足以下具体的系统需求。
考虑到系统的保密性,需要有系统登陆功能;系统使用者为学校学籍管理人员。暂不需要考虑用户的前台增加功能和权限问题。
可多人同时操作本系统。
能够保障管理数据的安全、准确;能够实现方便的扩展,满足学校发展的需要。 易安装、部署;系统维护方便;对操作人员的技能要求比较低,操作方便。
学生学籍信息的增加。用户根据需要来录入数据,但必须保证其正确性和准确性。 学生学籍信息的删改查,学生学籍状态的标识。用户根据需要对指定的数据进行修改,由于记录繁多,因此用户可能首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到制定的记录进行修改,保证修改的内容的正确性和准确性后可更新数据库的数据。
对学生某学年某学科成绩信息的增删改查。用户根据需要对指定的数据进行修改,由于记录繁多,因此用户可能首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到制定的记录进行修改,保证修改的内容的正确性和准确性后可更新数据库的数据。
提供方便灵活的数据查询功能,满足繁杂、多样的数据查询需求。系统维护方便。
第3.2节 性能需求
本学生学籍管理系统又分为学生信息管理、院系管理、班级管理和管理设置、其他设置,系统信息等功能模块。
(1)学生信息管理模块
主要是对学生信息(如学号、姓名、性别、家庭住址等)进行管理。本模块又分为四部分功能:录入学生信息、查看学生信息、修改学生信息、删除学生信息。
(2)院系管理模块
主要对院系进行如下管理:添加院系、修改院系信息、删除院系、添加专业、修改专业信息、删除专业。
(3)班级模块
添加班级、查看班级信息。
(4)管理设置
添加管理员、删除管理员、管理员密码修改、查看登陆日志
(5)其他设置
查看系统设置信息
(6)系统信息
对于系统信息的了解。
第3.3节 系统数据需求
学生学籍管理系统是一个数据库管理系统,在实际开发中,我们根据数据库中表的结构来设计程序代码中的各个模块,包括管理员登录验证,院系管理模块,班级管理模块,学生信息管理模块。
为了保证系统能够长期、安全、稳定、可靠、高效的运行,学生信息管理系统应该满足以下的性能需求。
(1)系统处理的准确性和及时性。
系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学
校对信息处理的需求。
(2)系统的开放性和系统的可扩充性。
学生学籍管理系统在开发过程中,应该充分考虑以后的可扩充性。而要实现这一点,应通过系统的开放性来完成,系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。
(3)系统的易用性和易维护性。
学生学籍管理系统使用人员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面。针对用户可能出现的使用问题,要提供足够的帮助,缩短用户对系统熟悉的过程。
本系统的文件名统一使用英文单词或者多个单词描述,除首单词小写,以后的每一个单词的首字母大写。如果某文件是防止未登录用户访问的,则加上admin_前缀,如admin_index.jsp。录入信息的页面一般是这样的格式命名:admin_addXxx.jsp,如admin_addAdmin.jsp(添加管理员的页面,是一个输入表单),然后在处理此表单请求的页面的命名是在表单页面加_post后缀即可,如admin_addAdmin_post.jsp(处理表单传来的数据,将新管理信息的记录插入到数据库)。
第3.4节 系统用例图
用例图确定系统中所包含的参与者、用例和两者之间的对应关系,用例图描述的是关于系统功能的一个概述。系统管理员登录,下面对其进行用例分析。
本系统分为不同类型的管理员,超级管理员和普通管理员。不同管理员相同的用例操作如下所示。
登录系统,输入正确的用户ID 和密码后才可以登录到后台进行管理操作。
密码修改,管理员修改自己的密码。
学生信息管理,对学生信息进行修改、删除操作。
学生信息添加,对新生的录入。
设置管理,管理员可以添加管理员,查看登陆日志
院系管理,添加院系、修改院系、删除院系、查看院系,添加专业、修改专业。
查看专业。
班级管理,添加班级,查看班级信息。
成绩管理,增加成绩,成绩管理。
其中超级管理员的用例图描述的是管理员完成各项操作的实现过程,具体的用例图如图3.1所示。
图3.1 超级管理员的用例图
第3.5节 系统UML 活动图
系统活动图着重描述操作实现中所完成的工作以及用例实例或对象中的活动。在状态图中状态的转移通常需要事件的触发,而活动图中一个活动结束后立即进入下个活动。构成活动图的模型元素有活动、转移、对象、信号、泳道等,其中活动是活动的核心概念。
本系统的活动图显示的是管理员(教师)登录系统,进行一系列操作完成学籍的管理过程具体的活动视图如图3.2所示。
图3.2 系统UML 活动图
第4章 系统分析
第4.1节 编程语言选择
JSP 的设计目标主要是提供一种更为简便、有效的动态网页编写手段,并且增强网页程序的独立性、兼容性和可重用性。它是通过以下几个方面加以实现的:
简便性和有效性。JSP 动态网页的编写与一般的静态HTML 的网页的编写是十分相似的。只是在原来的HTML 网页中加入一些JSP 专有的标签,或是一些脚本程序。这样,熟悉HTML 网页编写的设计人员可以很容易进行JSP 网页的开发。而且开发人员完全可以不亲自编写脚本程序,而只是通过JSP 独有的标签利用别人已写好的部件来实现动态网页的编写。这样,不熟悉脚本语言的网页开发者,完全可以利用JSP 做出漂亮的动态网页。这在其他的动态网页开发中是不可思议的;
程序的独立性。JSP 是Java API家族的一部分,它拥有一般的Java 程序的跨平台的特性,换句话说,就是拥有程序的对平台的独立性。即Write once, Run anywhere 。
程序的兼容性。因为 JSP中的动态内容可以各种形式进行显示,所以它可以为各种客户提供服务:从使用HTML/DHTML的浏览器,到使用WML 的各种手提无线设备(如移动电话和个人数字设备PDA ),再到使用XML 的B2B 应用,都可以使用JSP 的动态页面;
程序的可重用性。在 JSP页面中可以不直接将脚本程序嵌入,而只是将动态的交互部分作为一个部件加以引用。这样,一旦这样的一个部件写好,它可以为多个程序重复引用,实现了程序的可重用性。现在,大量的标准JavaBean 程序库就是一个很好的例证。
JSP/JAVA语言的优点不言而喻,它对于用户界面的更新,其实就是由Web Server 进行的,给人的感觉更新很快;所有的应用都是基于服务器的,所以它们可以时刻保持最新版本;客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。因此,本系统采用JSP/JAVA语言开发,JDK 选择1.4.2版本。
JavaScript 是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML 超文本标记语言、Java 脚本语言(Java 小程序)一起实现在一个Web 页面中链接多个对象,与Web 客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML 语言中实现的。它的出现弥补了HTML 语言的缺陷,它是Java 与HTML 折衷的选择,具有以下几个基本特点。
脚本编写语言。JavaScript 是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本语言一样,JavaScript 同样已是一种解释性语言, 它提供了一个易的开发过程。
它的基本结构形式与C 、C++、VB 、Delphi 十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML 标识结合在一起,从而方便用户的使用操作。
基于对象的语言。JavaScript 是一种基于对象的语言,同时以可以看作一种面向对象的。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
简单性。JavaScript 的简单性主要体现在:首先它是一种基于Java 基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java 是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格的数据类型。
安全性。JavaScript 是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。
动态性。JavaScript 是动态的,它可以直接对用户或客户输入做出响应,无须经过Web 服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为“事件”(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。
综合所述JavaScript 是一种新的描述语言,它可以被嵌入到 HTML 的文件之中JavaScript 语言可以做到回应使用者的需求事件 (如: form 的输入) ,而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程式所处理。
第4.2节 数据库及接口的选择
MySQL 是一种开放源代码的关系型数据库管理系统(RDBMS ),MySQL 数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL )进行数据库管理[4]。
由于MySQL 是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL 因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL 是管理内容最好的选择。
MySQL ,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。
MySQL 是瑞典的MySQL AB 公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。MySQL 完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。MySQL 具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。MySQL 用C 和C++编写,它可以工作在许多平台(Unix ,Linux ,Windows )上,提供了针对不同编程语言(C,C++,JAVA等) 的API 函数;使用核心线程实现多线程,能够很好的支持多CPU ;提供事务和非事务的存储机制;快速的基于线程的内存分配系统;MYSQL 采用双重许可,用户可以在GNU 许可条款下以免费软件或开放源码软件的方式使用MYSQL 软件,也可以从MySQL AB公司获得正式的商业许可。
除了以上特点,MySQL 还有一个最大的特点,那就是在诸如 UNIX 这样的操作系统上,它是免费的,可从因特网上下载其服务器和客户机软件。并且还能从因特网上得到许多与其相配的第三方软件或工具。而在 Windows 系统上,其客户机程序和客户机程序库是免费的。
如果您正在寻找一种免费的或不昂贵的数据库管理系统,可以有几个选择,如,MySQL 、Postgres (一种免费的但不支持来自商业供应商引擎的系统)等。在将 MySQL 与其他数据库系统进行比较时,所要考虑的最重要的因素是性能、支持、特性(与 SQL 的一致性、扩展等等)、认证条件和约束条件、价格等。相比之下,MySQL 具有许多吸引人之处。
(1)速度快。MySQL 运行速度很快,开发者声称 MYSQL 可能是目前能得到的最快的数据库。
(2)容易使用,MySQL 是一个高性能且相对简单的数据库系统,与一些更大系统的设置和管理相比,其复杂程度较低。
(3)MySQL 对多数个人用户来说是免费的。
(4)4.1.1版本的数据库发行版仅仅只有21M ,安装完成也仅仅51M 。
(5)支持查询语言,MySQL 可以利用 SQL(结构化查询语言),SQL 是一种所有现代数据库系统都选用的语言。也可以利用支持 ODBC(开放式数据库连接)的应用程序,ODBC 是 Microsoft 开发的一种数据库通信协议。
(6)许多客户机可同时连接到服务器。MySQL 数据库没有用户数的限制,多个客户机可同时使用同一个数据库。可利用几个输入查询并查看结果的界面来交互式地访问 MySQL。这些界面为:命令行客户机程序、Web 浏览器或 X Window System 客户机程序。此外,还有由各种语言(如C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl)编写的界面。因此,可以选择使用已编好的客户机程序或编写自己的客户机应用程序。
(7)连接性和安全性,MySQL 是完全网络化的,其数据库可在因特网上的任何地方访问,因此,可以和任何地方的任何人共享数据库。而且 MySQL 还能进行访问控制,可以控制哪些人不能看到您的数据。
(8)可移植性,MySQL 可运行在各种版本的 UNIX 以及其他非 UNIX 的系统(如 Windows 和 OS/2)上。MySQL 可运行在从家用 PC 到高级的服务器上。
(9)开放式的分发,MySQL 容易获得;只要使用 Web 浏览器即可。如果不能理解某样东西是如何起作用的,或者对某个算法感到好奇,可以将其源代码取来,对源代码进行分析。如果不喜欢某些东西,则可以更改它。
接口的选择为JDBC 。
JDBC 数据访问接口,为支持Java 程序的数据库操作功能,Java 语言采用了专门的Java 数据库编程接口(Java Database Connecivity,JDBC),用于在Java 程序中实现数据库操作功能并简化操作过程[5]。
JDBC 支持基本SQL 语句,提供多样化的数据库连接方式,为各种不同的数据库提供统一的操作界面,JDBC 的工作流程如图4.1所示。
图4.1 JDBC工作原理详细解析图
JDBC 是由一系列连接(Connection )、SQL 语句(Statement )和结果集(ResultSet )构成的,其主要作用概括起来有如下3个方面:建立与数据库的连接,向数据库发起查询请求,处理数据库返回结果。
连接(Connection )是一个代表与数据库进行的程序连接的对象。通过连接,可以执行SQL 语句、返回数据库操作结果等。
事务是工作中的基本逻辑单位。数据库的主要责任是保存信息,因此它需要向用户提供保存当前程序状态的方法。同样,当事务执行过程中发生错误时,需要有一种方法使数据库忽略当前的状态,并回到前面保存的程序状态。这两种情况在数据库用语中分别称为提交事务和回滚事务。为了处理这两种情况,JDBC API 包括了两个方法commit()和rollback(),分别用于实现事务的提交和回滚。在使用这两个方法时通常要使用try ... catch语句捕获数据库实际运行操作时可能发生SQLException 。
数据源是在JDBC 2.0中引入的一个概念。在JDBC 2.0扩展包中定义了javax.sql. DataSource 接口描述这个概念。DataSource 对象除了将数据库和专门的 JDBC 驱动程序信息封装到一个单独的、标准化的对象中之外,还存储了建立数据库连接所需的所有信息,因此它可以作为Connection 工厂。用户只需要提供一个数据源的逻辑名称(Logic Name),就可以通过查询JNDI 服务,从数据源中获取相应的数据库连接。这个过程就像通过指定文件名可以在文件系统中顺利地找到一个文件一样。
javax.sql.DataSource 接口中定义许多不同的属性对于表的属相和描述如表4.1所示。
表4.1 接口定义的属性举例描述
使用数据过程中,我们首先要调用javax.naming.Context.bind()方法把数据源实例注册到命名服务环境中。bind()方法参数为注册名称和注册对象。注册成功后,在JNDI 目录下会生成一个.binding 文件,该文件记录了当前名称服务环境拥有的名称及对象。
第4.3节 应用服务器选择
Tomcat 是一个免费的开源的Serlvet 容器,它是Apache 基金会的Jakarta 项目中的一个核心项目,由Apache ,Sun 和其它一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总能在Tomcat 中得到体现。
Tomcat 提供了各种平台的版本供下载,由于Java 的跨平台特性,基于Java 的Tomcat 也具有跨平台性。
Tomcat 也提供其它的一些特征,如与SSL 集成到一块,实现安全传输。还有Tomcat 也提供JNDI 支持,这与那些J2EE 应用服务器提供的是一致的。说到这里我们要介绍一下通常所说的应用服务器(如WebLogic )与Tomcat 有何区别。应用服务器提供更多的J2EE 特征,如EJB ,JMS ,JAAS 等,同时也支持JSP 和Servlet. 而Tomcat 则功能没有那么强大,它不提供EJB 等支持。但如果与JBoss (一个开源的应用服务器)集成到一块,则可以实现J2EE 的全部功能。事实上,我们的很多中小应用不需要采用EJB 等技术,JSP 和Servlet 已经足够,这时如果用应用服务器就有些浪费了。
Apache 是一个强大的Web 服务器在处理静态页面、处理大量网络客户请求、支持服务的种类以及可配置方面都有优势,高速并且强壮。但是没有JSP/Servlet的解析能力。整合Apache 和Tomcat 可以看作是用Tomcat 做Apache 的JSP/Servlet解析插件,将两者优势结合起来。
Tomcat 短小精悍,配置方便,开源免费,能满足我们的需求,这种情况下我们自然会选择Tomcat 。
第4.4节 开发工具选择
MyEclipse 企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse )是对Eclipse ID 的扩展,利用它我们可以在数据库和J2EE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。MyEclipse8.5集成了Eclipse3.5.2,提升了团队协作开发、开发周期管理以及Spring 和Hibernate 的更好支持。用MyEclipse 的理由:可视化的HTML/JSP/JSF编辑器;JSP, Javascripte调试功能;良好的XML 编辑器;良好的Hibernate 集成。MyEclipse 无疑是最优秀的Java 开发平台之一。
第5章 数据库设计
第5.1节 数据库连接
JDBC 是Java 数据库连接(Java Data Base Connectivity) 技术的简称,是为各种常用的数据库提供无缝连接的技术[6]。JDBC 定义了Java 语言同各种SQL 数据之间的应用程序设计接口(API ),提高了软件的通用性。
JDBC 的关键技术是数据库连接驱动程序,针对这点大量的数据库厂商和第三方开发商支持Java 的JDBC 的标准,并开发了不同的数据库JDBC 驱动程序[7]。这些驱动程序可以分成四种:JDBC-ODBC Bridge驱动程序、JDBC Native Bridge驱动程序、JDBC-Network Bridge驱动程序、Pure Java JDBC Driver。
JSP 连接MySQL 数据库例程。
java.sql.Connection sqlConn; java.sql.Statement sqlStmt;
java.sql.ResultSet sqlRst;//注册JDBC 服务器[8] String DBUser=数据库用户名; String DBPassword=数据库密码; String DBServer=localhost ; String DBNAME=数据库名;
Class.forName(“org.gjt.mm.MySQL.Driver ”).newInstance(); //连接数据库[9]
sqlConn=java.sql.DriverManager.getConnection(DBUser,DBPassword); sqlStmt=sqlConn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);%>
第5.2节 数据库表的结构
在进行数据库设计这一过程是是根据各方面的要求和考虑然后才设计了现在的这个数据库模型。根据实际学生学籍管理系统的业务运行和需求,我们小组将信息分为,学生,院系,成绩,管理员[10]。数据库名为StuDB 。表名以ta_作为前缀,然后根据的表记录的对象,以其英文件单命名,如ta_admin(管理员表),如果不足以用一个单词来描述一个表的意思,需要用多个单词来对表进行描述,除首单词小写,以后的每一个单词的首字母大写,如果表名太长,使用单词缩写,。表中的字段也是如此,以英文件单词或者多个单来描述其意思,如stntId(学号) 。总之,命名的原则是:简洁而意思清楚,不产生异义,代码编写人员易懂,能提高程序开发效率。
数据库中所有表的名称及作用的详细列表如表5.1所示。
表5.1 数据库详细清单列表
对于学生表的设计主要涉及到了学生的属性,数据类型,长度的设计和主键的标记,如表5.2所示。
表5.2 表ta_student的数据库表的详细设计
对于管理员的数据库表的设计包括管理员属性,属性的类型,长度大小,和主键的标记。如表5.3所示。
表5.3 ta_admin的数据库的详细设计
对于课程的数据库的设计包括,数据库的属性,数据类型,数据的长度和主键的标记,所表5.4所示。
表5.4 ta_class数据库的详细设计
对于院系的数据库表的设计,包括院系的属性列表,数据类型和长度的标注和主键的选择。如表5.5所示。
表5.5 ta_department数据库的详细设计
第5. 3节 实体及E-R 图
本系统中根据上面的设计规划出的实体有,学生学籍管理、学生信息管理、用户管理。
实体—关系模型(Entity —Relationship Module ,简称E —R 模型)是数据库结构设计常用的方法。E —R 图中的巨型表示实体,菱形表示实体间的联系,联系的类型可用1:1或M:M表示,圆角表示实体的有关属性。
学生实体分为,学生(学号(stntId ),姓名(stntName ),性别(sex ),生日(birthday ),民族(folk ),政治面貌(polity ),卡号(idCard ),籍贯(hometown ),住址(homeAdderss ),电话(telphone ),邮箱(emile ),学制(stydType ))。
管理员实体分为,管理员(ID (userId ),姓名(userName ),密码(password ),等级(role ),登录时间(loginTimes ))。
班级实体分为,班级(班级号(classID ),专业号(majorId ),年限(classYear ),)。 本系统的E —R 图描述了不同实体间与系统的总体关系,如图5.1所示。
图5.1 学籍管理总体ER 图及详细说明概述
第5. 4节 数据字典
数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后获得的主要成果。数据字典通常包括以下几部分:
(1)数据项,数据项是不可在分的数据单位。
(2)数据结构,数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据结构组成,或由若干数据项和数据结构混合组成。
(3)数据流,数据流是数据结构在系统内传输的路径。
(4)数据存储,数据存储是数据及结构停留或保存的地方,也是数据流的来源和去向之一。
(5)数据字典,是关于数据库中数据的描述,即对原数据的描述。
本系统对院系的名称,描述,及组成在数据库中数据描述如表5.6所示。
表5.6 对系别描述的数据字典
本系统对在数据库中学生的名称,描述及组成信息描述如表5.7所示。
表5.7 对学生描述的数据字典
本系统对在数据库中班级的名称,描述,组成等详细信息的阐述如表5.8所示。
表5.8 对班级描述的数据字典
第5.5节数据流图
数据流程图(Data Flow Diagram ,简称DFD )是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。它的绘制依据是现行系统流程图,数据流程图是管理信息系统的总体设计图。
数据流程图的基本符号是数据流图的基本单位,具体的数据流图如图5.2所示。
图5.2 流程图的基本符号
数据流图的顶层图是进入系统的初步框架,是进入系统的入口如图5.3所示。
图5.3 系统顶层示意流程图
第6章 详细设计
第6.1节 整体布局及功能描述
学生学籍管理系统是一个数据库管理系统[11],在实际开发中,我们根据数据库中表的结构来设计程序代码中的各个模块,包括管理员登录验证,院系管理模块,班级管理模块,学生信息管理模块,学生成绩管理模块。所有Java Bean以及 Servlet文件均放在com.qichunren 下的相应的包中,如连接数据库的Bean 文件位于com.qichunren.database 里,获取各种样式的各种时间的Bean 文件还有系统创建学号的Bean 文件均位于com.qichunren.util 里. (注:此util 包中放各种实用类)。程序界面的图片文件位于images 下。所有的JSP 代码均放在WebRoot 下,便于查看。
前台(仅一个页面,index.jsp )登录界面。
后台(管理界面)采用左T 框架结构,顶部为管理系统的头部,用来显示管理系统的名称,以及一些常用操作的链接,所有菜单项位于左侧页面,而且为了便于显示,左侧菜单项使用JS 中的卷帘效果,右侧页面为工作区。
界面设计规范。
原则:总体协调,舒服不花哨。
界面边角注意颜色渐变,以实现总体上的立体视觉效果。总体色系为 淡青绿色。 此项目主要是做有关于学生学籍进行管理的应用型软件,它主要使用对象是管理员即老师,能够减少老师的工作量和工作时间,快速而准确的对每个学生进行管理。
联网用户访问学生学籍管理系统的互联网地址[12],登录后台,进入管理系统的首页。学生信息管理模块分为,新生信息录入,学生基本信息修改,学生信息查询。院校信息管理分为,院系添加,院系管理,专业添加,专业管理。管理员管理模块分为,修改当前管理员的密码,添加管理员,删除管理员(实现分角色对本系统进行管理)。
总体的设计模块包括管理员从登陆系统后,一系列对学生信息的操作如图6.1所示。
图6.1 整体布局及其功能描述的总体框架
第6.2节 登陆管理
在管理员登录验证中,在管理员符合各项登录条件后,将用户请求转向管理后台的首页,与此同时在数据库中产生登录日志,以备系统管理员日后查看。登录条件包括用户名存在,密码正确,状态为正常,验证码正确。
登录界面是管理员进入程序的入口,在正确输入用户名,密码和验证码后,可以进入系统,如图6.2所示。
图6.2 管理员登陆的首页面进入系统的入口
第6.3节 学生信息管理模块
录入新生信息(包括基本信息,联系方式,在校的学籍信息等等) 信息录入成功后此时学生的信息已经在数据库中产生了一条记录,主要实现对学生基本信息的管理,也是该系统最最基本的模块。包含功能有录入信息、查询信息、修改信息、班级管理、等几个主要的功能。
录入信息
对新入学的新生或者是转入该校的学生进行新的基本信息的录入,方便于对该生的统一管理。在设计系统的数据库时,当基本信息输入成功后,系统将自行把资料存储与StudentInfo 学生个人信息表中。而当录入的信息出错或者是该学生的信息已经存在页面将转如修改学生信息的页面。
管理员通过了解学生的基本信息,对学生的信息进行录入,完成对学生的注册,保存学生的学籍,如图6.3所示。
图6.3 录入详细学生信息实现管理学生页面
第6.4节 院系管理模块
院系管理完成对院系基本情况的完善及添加。要添加院系,添加专业,添加完院系或者专业后,可以查看院系,专业信息,并对其进行修改。
管理员添加院系,专业,如果对于所添加的信息需要修改,则修改具体的信息情况如图6.4所示。
图6.4 添加编辑院系管理页面
第6. 5节 班级管理模块
班级管理模块中要实现对班级的管理,可以添加班级,查看班级实现班级的管理。
输入正确的班级,选择所要输入班级的所在院系及专业实现对班级的添加,具体的实现界面如图6.5所示。
图6.5 添加班级管理班级信息页面
第6. 6节 管理设置模块
管理设置模块要实现超级管理员对管理员的添加,删除管理员,修改管理员密码,查看管理员信息,查看登录日志。其中一般管理员只能查看自己的信息及修改自己的密码,不能增加,删除管理员,还能查看登陆日志。
通过输入正确的账号和密码可以增加管理员,还可以删除管理员,具体的实现界面如图6.6所示。
图6.6 管理管理员基本信息页面
结 论
回顾该系统从选题,到调研、需求分析、设计、编码实现、测试等,论文的撰写,这系列的过程,感想颇多,收获也很多。
通过这次学习,把我所学的JAVA 知识都灵活运用上了。其中我用到的数据库是MySQL ,并且使用MyEclipse 的开发工具,用JAVA 、JSP 语言。主要涉及到MySQL 数据库的连接,网页的设计与美化,还有JSP 动态网页的实现等,让我受益非浅。其中我主要用到的技术还学会了很多软件的使用、开发的方法经。
本系统分为不同的管理员登录,分为超级管理员和普通管理员。超级管理员可以实现对学生基本信息的管理,成绩管理,班级管理,院系管理,管理设置,公告管理,普通管理员和超级管理员的区别是不能对管理员的添加、修改功能,只能查看公告,不能发布公告。
开发过程中,我习惯于每天关机前备份,出错误后,就把备份的代码和数据库还原;可是在此过程中,多次发现同一个问题:备份时能正确执行页面功能,而还原后却不能;这个问题一直困扰着笔者,百思不得其解。直到前不久,与同学聊起数据库时,才发现了问题的症结所在:每次备份数据库时,不能在原有的数据库上覆盖备份,这样备份的只能是数据库的增量;在还原数据库时,包含增量,从而就难免出错。从那以后,进行数据库备份时,都重新选择一个新的位置或者先把要备份处的旧的数据库删除掉。这样就避免了以上错误,省了好多工夫。
而数据库与主程序之间的链接问题主要表现在对MySQL 的不十分熟悉上,过程中对计算机的各种设置不是很了解。就如,系统的登陆和考试管理模块,出现了第一次登陆或进入是没什么问题,当退出后再次进入的时候就链接不上。这个问题困扰了笔者达两个星期之久,翻阅了很多的资料都没能到完满的解决。后来在导师的指导下发现可能是MySQL 的设置出现了不正确或不标准。
在开发系统过程中,本人发现在知识经验方面都存在着不足。另外,在这个开发过程中,时间也比较仓促。因此,系统必然会存在一些缺陷和不足。谨请各位老师提出宝贵的意见。感谢指导老师对我认真细心地教导!
参考文献
[1]刘世峰. 数据库基础与应用[M].北京:中央广播电视大学出版社, 2001.
[2]谢季萍,徐孝凯. MySQL 上机操作指导[M].北京:中央广播电视大学出版社, 2004. [3]张健沛. 数据库原理及应用系统开发[J].北京 2011:201-289. [4]萨师煊,王珊. 数据库系统概论[M].北京:高等教育出版社,2000.
[5]贾讽波,杨树青,杨玉顺. 数据库应用实例[M]. 北京:人民邮电出版社,2003. [6]罗晓芾. 学生学籍管理的设计与实现(高级)[J]. 北京 2007:187-532. [7]李红. 管理信息系统开发与应用[M]. 北京:电子工业出版社,2003. [8]刘新. Java开发技术大全[M]. 北京:清华大学出版社,2009. [9]周之英. 现代软件工程[M]. 北京:科学出版社,2003
[10]Inmon W H. Mathematical Statistics and Data Analysis[M]. America :Brooks Cole,2000.
[11]Kimball R. Practical Database Programming[M]. English :Wiley-IEEE Press, 2003. [12]Imhoff C. Database Modeling and Design[M]. America:Morgan Kaufmann,2004. [13]Mattison R. Database of Dose Coefficients[M]. America:Elsevier,2003:408-450. [14]张克东. 软件工程与软件测试自动化教程[M]. 北京:电子工业出版社,2002. [15]郑人杰,殷人昆,陶永雷. 实用软件工程[J]. 北京 2003: 8-39.
致 谢
此次毕业设计完成的前提是老师提供了悉心的关怀、适时的鼓励和精心的指导,在此表示衷心地感谢!
开发设计初期,由于对学生学籍管理的流程模式不太熟悉,所以对开发模式、设计思想都很茫然。这时候,是老师不厌其烦地帮助分析、提建议。老师平日里教学繁忙,利用自己休息的时间,给了我很多意见并指出其中的错误和不足之处,使我得到不少的提高。在老师的悉心关怀和精心指导下,本人对系统的框架有了一定的了解。每天都要不断的学习有关学籍制度的资料,影响到了设计,很担心影响了进度;此时,又是老师不断地从行动和言语给予鼓励和支持,再后来老师帮助分析、总结系统需要改进和完善的地方,让本人在困难的时候能够有恒心继续下去,从而完成了毕业设计。此外,由于本人在毕业设计的同时也在一家公司实习,这导致时间上有些紧迫,这时又是老师给予了本人莫大的鼓励和支持。
老师认真负责的工作态度、严谨的治学风格和关爱学生的满腔热情,特别是在帮助本人一遍一遍修改论文的过程中使本人深受感动;同时老师们在工作方面也给予了种种建议,帮助本人清楚的认识到如今的就业环境。在此,再次表示诚挚地感谢!
另外在系统设计过程中,还要感谢给予我帮助的同学们和网上提供相关资料的朋友们以及参考文献的作者们。
诚信申明
本人申明:
我所呈交的本科毕业设计(论文)是本人在导师指导下运用四年专业知识进行的研究工作及全面的总结。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中创新处不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京化工大学或其它教育机构的学位或证书而已经使用过的材料。与我一同完成毕业设计(论文)的同学对本课题所做的任何贡献均已在文中做了明确的说明并表示了谢意。
若有不实之处,本人承担一切相关责任。
本人签名: 年 月 日
学生学籍管理的设计与实现
摘 要
学生学籍管理是教育教学单位不可缺少的部分,它的内容对教学管理和学校的决策者都非常重要。给学校教学管理提供了很大的方便性,提高了工作效率。但是一直以来人们用传统人工的方式管理文件文档,这种管理方式效率低,保密性差,出错不易更改,同时也耗费了大量的人力财力,时间一长,将产生大量的文件数据,这对于查找维护,更新都带来了很大的困难。
21世纪是信息产业的时代,全球信息电子化的潮流势不可挡,计算机被广泛应用使我们的经济和社会生活因此发生了深刻的变革。与此同时,我国的教育事业蓬勃发展,升学率普遍提高,各类学校校规模不断扩大,对于学生管理工作的高效性和规范性提出了更高的要求。使用计算机可以方便的对大量数据进行增加、删除、更新等操作。它有着人工管理永远无法比拟的优点, 检索迅速、查找方便、可靠性大、存储量大、保密性好、寿命长、成本低等。当然,这些都离不开数据库技术和网络技术的支持。学校的学生学籍信息管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要。为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时准确地获取需要的信息,充分发挥人员的工作潜力。
因此,不难想象正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱。同时,编写一套完善的学生学籍管理系统的任务就显得尤为重要,学生学籍管理系统就是数据库在网络上应用。
关键词: 独立学院 学生管理 管理体制 计算机信息
The Design and Implementation of School Management System
——used for teachers
Abstract
Students Information Management System is indispensable part of the education department. It is very important to the teaching management and decision makers. It provides a lot of convenience and improves work efficiency. However, for a long time, people used the traditional Student Information Management System. The traditional method gets many disadvantages: low efficiency, bad privacy protection, easily to make mistake. It wastes lots costs of human and financial capital, producing massive document data. These would take great difficulties for the management.
21st century is the age of information industry. Computers are the main equipments in our daily economic or social life because of the global information technology. Meanwhile, Chinese education enterprise get vigorous development: graduation rates generally improved, all kinds of school scale unceasingly expands. Traditional Students Management gets harder because of the high quantity of students. So the New Students Management should be more efficiency and standard. Using the computer can be convenient for large data increasing, deleting, updating, and operating. It has incomparable virtues that manual administration can never get: searching quickly and easily, reliability, high storage capacity, better secrecy, long service life, low cost and so on. These are inseparable from the database technology and network technology support. The Students Information Management is the school management status as one of the important tasks, the former manual operation already can not adapt to the needs of the office now. In order to get rid of tedious work and improve working efficiency, we should make computer information processing become inevitable. Developing the perfect function and safe and reliable management system can greatly improve the utilization rate of school.
Keywords : Student Management Software Engineering B/S Browser
目 录
前 言 ..................................................... 1
第1章 课题研究价值 ......................................... 2
第1.1节 选题背景 ........................................... 2
第1.2节 开发的目的和意义 ................................... 2
第1.3节 课题简介 ........................................... 3
第2章 可行性分析 ........................................... 5
第2.1节 技术可行性分析 ..................................... 5
第2.2节 经济可行性分析 ..................................... 6
第2.3节 运行可行性 ......................................... 6
第3章 需求分析 ............................................. 7
第3.1节 功能需求 ........................................... 7
第3.2节 性能需求 ........................................... 8
第3.3节 系统数据需求 ....................................... 8
第3.4节 系统用例图 ......................................... 9
第3.5节 系统UML 活动图 .................................... 11
第4章 系统分析 ............................................ 12
第4.1节 编程语言选择 ...................................... 12
第4.2节 数据库及接口的选择 ................................ 14
第4.3节 应用服务器选择 .................................... 17
第4.4节 开发工具选择 ...................................... 18
第5章 数据库设计 .......................................... 19
第5.1节 数据库连接 ........................................ 19
第5.2节 数据库表的结构 .................................... 20
第5.3节 实体及E-R 图 ...................................... 22
第5.4节 数据字典 .......................................... 23
第5.5节 数据流图 .......................................... 24
第6章 详细设计 ............................................ 26
第6.1节 整体布局及功能描述 ................................ 26
第6.2节 登陆管理 .......................................... 27
第6.3节 学生信息管理模块 .................................. 28
第6.4节 院系管理模块 ...................................... 29
第6.5节 班级管理模块 ...................................... 30
第6.6节 管理设置模块 ...................................... 31
结 论 .................................................... 33
参考文献 .................................................... 34
致 谢 .................................................... 35
前 言
随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必经之路。
学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得了参加学习的资格。学籍是组织管理学生的客观依据。但传统的学籍管理模式和管理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序,阻碍教学改革的深化,难以保证该项工作应具有的严肃性。
20世纪末,随着我国计划生育的不断普及和深入,入校人数正逐步下降,而各个学校的规模却在不断扩大,校与校之间的合并规模也越来越大,而此时计算机在各学校也开始普及,一些学校开始将计算机应用到学生信息的管理中去,为学生管理信息系统的形成打下了坚实的基础。
学生学籍管理系统,旨在探索一种以互联网为平台的管理模式。这种新的管理模式,为现代管理创造了一种新的环境,使教务管理突破时空限制,实现管理的网络化,提高管理效率和标准化水平。使学校管理者、教师和学生可以在任何时候、任何地点通过网络进行管理与查询。这还让管理者从繁重的工作中解脱出来,将主要精力转移到创造性的教学改革工作中。
目前学籍管理的现状是处于半手工版信息管理阶段。学校虽然组织成局域网,但仍没有完整的系统,计算机网络优势也未得到发挥。因此目前学生学籍管理系统存在的问题,如未完全实现信息管理化,基本上是半人工办计算机的阶段,学校领导未能及时得到学生信息的反馈,所以不能及时的进行指导学习等活动,对教育质量也有所影响,系统功能较少,系统不稳定,易丢失数据,系统开放性不够,大部分学校学籍管理系统对学生开放时间有限,学生学籍系统网络性不强,各部门之间信息渠道单一,不利于互相交流,协调工作。
第1章 课题研究价值
第1.1节 选题背景
现在的社会日新月异,学校的发展也需要与时俱进。学生的数量越来越大,学籍资料更换频率频繁。手工数据管理,资料存放在多处,没有统一管理模式,整理不便,统计困难,劳动量大,却质量低下,错误频发。由此可见,手工管理模式的缺点日益凸显。
当前,学生学籍管理的弊端主要表现在两方面:第一,工作繁杂、工作量大、错误率高;第二,缺乏监督体系和控制手段。学籍管理的政策性很强,应该严格按照上级部门的有关政策和规定办事,然而,由于传统的学籍管理模式缺乏有效的监督措施,使有关部门的政策规定难以得到及时准确的贯彻执行,使学籍管理工作完全失去了应有的严肃性,给学校的人才培养质量带来了严重的影响,也给社会带来了很大的负面影响。
随着教育体制改革,学生管理正在逐步迈向管理信息现代化。学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。可是我国学生管理信息化水平并不高。学生学籍管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
第1.2节 开发的目的和意义
提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。满足学校领导、教育管理单位、学生管理人员、教师和学生的不同层次和不同方面的需要。为学校将来的整体信息化建设提供必要的支持。总之,通过该系统的建设来提高学校学生
学籍管理效率,使得学校的发展能够适应当前的教育信息化建设的总体发展趋势。
因此,开发一个功能完善、操作简单、界面友好、有针对性的学籍管理系统对学校、乃至社会都是非常必要,非常有意义的。
以现代计算机技术、网络技术为基础的数字化教学正朝着信息化、网络化、现代化的目标迈进。如今,国内的大部分学校都已接入或将要接入互联网并建成校园网,各校的硬件设施已经比较完善,通过设计和建设网络拓扑架构、网络安全系统、数据库基础结构、信息共享与管理,从而实现教育的网络化和信息化[1]。与网络技术相结合的新型学生学籍管理模式,对教育、教学过程有着极为宝贵的特性,可以为新型的办学模式提供一个信息化的平台。
当前市场上学生学籍管理方面软件较多,但一般都是单机版,没有实现连网功能。而就现在学生学籍信息管理的发展趋势,以及学校跨校区延伸管理和二级学院分级管理的实际情况,这种单机版的管理软件并不是很实用。市场上学生学籍管理的软件侧重于记录学生的基本情况,其基本功能已不太适合现在规模扩大的广大学校。随着学校办学规模的扩大、专业设置和学生人数的逐年增加,原本基于小型数据库的、半手工操作、单机版的学生学籍管理系统已经难以适应当今广大学校的发展要求,而应用先进的信息网络技术建立一套完整、规范的学生学籍信息资料计算机管理学籍,以便快捷地录入、统计、查询、检索学生的各类信息,及时了解学生的学习情况、使不同校区、二级学院、系部的分级管理达到资源共享,协同管理,实现管理信息现代化、规范化和科学化的学籍管理系统是现代学籍信息管理系统的发展趋势。它还必须具备使用方便,界面简洁,学校的管理人员很容易操作和使用的特点。相信这种学生学籍管理软件会得到广大学校和广大学生信息管理人员的青睐。
由于本系统管理的对象单一,都是学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
第1.3节 课题简介
学生学籍管理趋向于复杂化和多元化,随着计算机技术的广泛运用,越来越多的高校对学生学籍的管理采用了数字化模式。查询、修改、录入、删除等基本操作都采
用了计算机数据库技术。比起以前使用人工繁琐的工作,和效率低下的卡片模式有了很大的进步,管理更加方便,更新更加简易及时,极大的优化了学生学籍的管理工作。
此次研究的目标是设计出一个供高校使用的基于MyEclipse 平台设计的学生学籍管理系统,编程语言为Java 。具体设计内容包括整体布局(模块划分),系统功能的设计(学成成绩查询,学生信息查询,教师信息查询,用户登录与退出,对用户信息可进行添加、删除等功能),以及数据库的建立。本次采用的方法、技术或设计工具包括:MyEclipse 软件开放平台,MySQL [2]建立信息数据库,使用Java 语言和控件链接数据库。本文档是用来定义需求说明、系统的功能描述以及相关业务流程,是我们小组进行项目开发的基础和依据。
系统的使用者为高等院校的管理人员,他们对学生的学籍进行整体的管理以及资料维护。
系统开发的目的是为了提高学籍管理的工作效率、实现数据的数字化、联网办公,我们立项开发此项目。
目标是可以实现对院校基本信息进行管理,如院系管理,专业管理,班级管理;以及对本校全体学生的基本信息和学籍进行管理和维护。
基本术语为学生信息(学号,姓名,出生年月,籍贯等等),院校信息(高等院 校名称,二级院校,二级院校的名称,专业信息)。
在系统开发过程中要对基本的版本信息及名称情况进行描述,以构成完整的系统信息。如表1.1所示。
本系统(学生学籍管理系统)采用B/S,即浏览器/服务器两层架构,管理人员的工作不受地理空间的限制。管理人员可以实现学生信息录入,学生信息修改和删除,以及与学生相关的信息的操作(注:本系统所有的操作均需要用户登录才有权限进行相关的业务操作,前台用户不能做任何事情。)
第2章 可行性分析
可行性分析是系统分析阶段的第二项活动,它的主要目是进一步明确系统的目标、规模与功能,对系统开发背景、必要性和意义进行了调查分析并根据需要和可能提出开发系统的初步方案与计划。可行性分析是对系统进行全面、概要的分析。
第2.1节 技术可行性分析
本系统利用现有的人力和物力开发出来的,作为阶段性产品,日后的发展空间大,实现方法逐步简单容易,并且开发本系统所使用的语言及设计平台,成熟稳定,经过多方面验证。Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC 、数据中心、游戏控制台、科学超级计算机、移动电话互联网。此次设计所使用的数据库是MySQL ,具有可伸缩性和可用性,企业级数据库功能以及易于安装部署和使用的特点。而是用的开发工具是MyEclipse 。这是一个十分优秀的用于开发Java 的Eclipse 插件集合,功能强大,支持也十分广泛,尤其对各种开源产品的支持十分不错。因此通过物力人力来分析,学籍管理系统在技术上是完全可行的。随着计算机技术发展到了一个新的时期,网络技术在十几年的发展过程中已日臻完善,而基于WEB 的数据库技术也已经十分成熟。在语言方面ASP ,PHP ,Java 也用事实证明了其强大的功能,还有微软最引以为豪的.NET 技术,更显示了在基于网络的应用中的强劲优势。至此,一种基于网络的、管理方便的、反应迅速的、具有交互性的学生管理信息系统应运而生了。
新式的学生管理系统采用了最新的数据库系统结构:B/S结构。这种基于B/S结构的学生管理信息系统在应用中显示了明显的优势。
数据库结构的规划是应用程序设计中一个非常重要的环节。学生学籍管理系统要处理与表现的数据量较多,若使用传统的方式来完成任务,可能会事倍功半,甚至有些任务还无法完成;学生学籍系统的设计开发,需要一套完善的数据库管理系统[3]。对于数据库系统的选用,如果所建立的是私人的Intranet ,则可以使用Access 等桌
面型数据库,但是像学生学籍系统这样需储存大量的数据和用户的系统设计,则需使用较大型的数据库,例如:SQL Server、Oracle 、Informix 、DB2、Sybase 等。本文的设计则应用到MySQL 。
第2.2节 经济可行性分析
经济可行性分析中最重要的内容之一是成本--效益分析。计算机发展到今天,价格低,功能强大。本系统的开发可以代替人工进行许多繁杂的劳动,节省资源,减少人工开支,提高学生管理工作的效率,节省资金。同时还能具有较高的安全性。同时本系统所消耗资源小,学校的电脑都能够满足,使教学质量更上一个台阶。开发及后期维护费用几乎可忽略不计,由于操作简单,实用性强,不需要进行高费用的专业培训。因此本系统可属于低成本,高效益的结合体,在经济上是可行的。
第2.3节 运行可行性
本系统界面大方,操作方便,无需专业指导,就可轻易上手。无论是系统管理人员还是教师,均能进行操作,营运环境要求底。
面对系统设计还应该以“标准型、安全性、高效性、保密性、可维护性”为基准,在着眼于当前实用的基础上,为将来系统的扩展,升级留有余地。软件的开发应能在较长的时间内满足学校的发展需要。
标准型要系统的编写与运行必须符合标准,既可以保证系统正常运行,又可以保证在此标准上,系统的每项功能运行良好。
可靠性指学籍信息至关重要,因此所编写的系统务必稳定可靠,从而避免或减少不必要的数据损失,防止对教学管理造成不便。
安全性是指控制使用者的用户权限,通过限制其权限,达到系统的安全要求,从而保证使用者无法操作与其无关的数据。
高效性是校学生信息量较大 ,因此系统对信息的处理能力和响应能力都应该是快捷有效。
可维护性是采用结构化模块设计,便于开发与维护,有利于系统的不断更新。
第3章 需求分析
第3.1节 功能需求
为方便学校做好学生学籍管理工作,设计一个学生学籍管理系统,在设计过程中作了系统分析和总体设计,软件设计采取模块化的设计思路。
该学生学籍管理系统主要对学生学籍信息、成绩信息进行管理,提供一个平台,供学籍管理人员增删改查学生信息、学生成绩信息。系统分为学生信息管理、学生成绩管理、信息查询等几个模块。学籍管理人员登录成功后可以对学生信息管理、学生成绩管理、信息查询等模块进行操作,如学生信息添加、修改、删除和查询;学生成绩登记、修改、删除和查询;查询信息等。
在“学生学籍管理系统”开发时应该满足以下具体的系统需求。
考虑到系统的保密性,需要有系统登陆功能;系统使用者为学校学籍管理人员。暂不需要考虑用户的前台增加功能和权限问题。
可多人同时操作本系统。
能够保障管理数据的安全、准确;能够实现方便的扩展,满足学校发展的需要。 易安装、部署;系统维护方便;对操作人员的技能要求比较低,操作方便。
学生学籍信息的增加。用户根据需要来录入数据,但必须保证其正确性和准确性。 学生学籍信息的删改查,学生学籍状态的标识。用户根据需要对指定的数据进行修改,由于记录繁多,因此用户可能首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到制定的记录进行修改,保证修改的内容的正确性和准确性后可更新数据库的数据。
对学生某学年某学科成绩信息的增删改查。用户根据需要对指定的数据进行修改,由于记录繁多,因此用户可能首先要输入一定的查询条件,缩小记录范围,然后再从该范围中找到制定的记录进行修改,保证修改的内容的正确性和准确性后可更新数据库的数据。
提供方便灵活的数据查询功能,满足繁杂、多样的数据查询需求。系统维护方便。
第3.2节 性能需求
本学生学籍管理系统又分为学生信息管理、院系管理、班级管理和管理设置、其他设置,系统信息等功能模块。
(1)学生信息管理模块
主要是对学生信息(如学号、姓名、性别、家庭住址等)进行管理。本模块又分为四部分功能:录入学生信息、查看学生信息、修改学生信息、删除学生信息。
(2)院系管理模块
主要对院系进行如下管理:添加院系、修改院系信息、删除院系、添加专业、修改专业信息、删除专业。
(3)班级模块
添加班级、查看班级信息。
(4)管理设置
添加管理员、删除管理员、管理员密码修改、查看登陆日志
(5)其他设置
查看系统设置信息
(6)系统信息
对于系统信息的了解。
第3.3节 系统数据需求
学生学籍管理系统是一个数据库管理系统,在实际开发中,我们根据数据库中表的结构来设计程序代码中的各个模块,包括管理员登录验证,院系管理模块,班级管理模块,学生信息管理模块。
为了保证系统能够长期、安全、稳定、可靠、高效的运行,学生信息管理系统应该满足以下的性能需求。
(1)系统处理的准确性和及时性。
系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学
校对信息处理的需求。
(2)系统的开放性和系统的可扩充性。
学生学籍管理系统在开发过程中,应该充分考虑以后的可扩充性。而要实现这一点,应通过系统的开放性来完成,系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。
(3)系统的易用性和易维护性。
学生学籍管理系统使用人员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面。针对用户可能出现的使用问题,要提供足够的帮助,缩短用户对系统熟悉的过程。
本系统的文件名统一使用英文单词或者多个单词描述,除首单词小写,以后的每一个单词的首字母大写。如果某文件是防止未登录用户访问的,则加上admin_前缀,如admin_index.jsp。录入信息的页面一般是这样的格式命名:admin_addXxx.jsp,如admin_addAdmin.jsp(添加管理员的页面,是一个输入表单),然后在处理此表单请求的页面的命名是在表单页面加_post后缀即可,如admin_addAdmin_post.jsp(处理表单传来的数据,将新管理信息的记录插入到数据库)。
第3.4节 系统用例图
用例图确定系统中所包含的参与者、用例和两者之间的对应关系,用例图描述的是关于系统功能的一个概述。系统管理员登录,下面对其进行用例分析。
本系统分为不同类型的管理员,超级管理员和普通管理员。不同管理员相同的用例操作如下所示。
登录系统,输入正确的用户ID 和密码后才可以登录到后台进行管理操作。
密码修改,管理员修改自己的密码。
学生信息管理,对学生信息进行修改、删除操作。
学生信息添加,对新生的录入。
设置管理,管理员可以添加管理员,查看登陆日志
院系管理,添加院系、修改院系、删除院系、查看院系,添加专业、修改专业。
查看专业。
班级管理,添加班级,查看班级信息。
成绩管理,增加成绩,成绩管理。
其中超级管理员的用例图描述的是管理员完成各项操作的实现过程,具体的用例图如图3.1所示。
图3.1 超级管理员的用例图
第3.5节 系统UML 活动图
系统活动图着重描述操作实现中所完成的工作以及用例实例或对象中的活动。在状态图中状态的转移通常需要事件的触发,而活动图中一个活动结束后立即进入下个活动。构成活动图的模型元素有活动、转移、对象、信号、泳道等,其中活动是活动的核心概念。
本系统的活动图显示的是管理员(教师)登录系统,进行一系列操作完成学籍的管理过程具体的活动视图如图3.2所示。
图3.2 系统UML 活动图
第4章 系统分析
第4.1节 编程语言选择
JSP 的设计目标主要是提供一种更为简便、有效的动态网页编写手段,并且增强网页程序的独立性、兼容性和可重用性。它是通过以下几个方面加以实现的:
简便性和有效性。JSP 动态网页的编写与一般的静态HTML 的网页的编写是十分相似的。只是在原来的HTML 网页中加入一些JSP 专有的标签,或是一些脚本程序。这样,熟悉HTML 网页编写的设计人员可以很容易进行JSP 网页的开发。而且开发人员完全可以不亲自编写脚本程序,而只是通过JSP 独有的标签利用别人已写好的部件来实现动态网页的编写。这样,不熟悉脚本语言的网页开发者,完全可以利用JSP 做出漂亮的动态网页。这在其他的动态网页开发中是不可思议的;
程序的独立性。JSP 是Java API家族的一部分,它拥有一般的Java 程序的跨平台的特性,换句话说,就是拥有程序的对平台的独立性。即Write once, Run anywhere 。
程序的兼容性。因为 JSP中的动态内容可以各种形式进行显示,所以它可以为各种客户提供服务:从使用HTML/DHTML的浏览器,到使用WML 的各种手提无线设备(如移动电话和个人数字设备PDA ),再到使用XML 的B2B 应用,都可以使用JSP 的动态页面;
程序的可重用性。在 JSP页面中可以不直接将脚本程序嵌入,而只是将动态的交互部分作为一个部件加以引用。这样,一旦这样的一个部件写好,它可以为多个程序重复引用,实现了程序的可重用性。现在,大量的标准JavaBean 程序库就是一个很好的例证。
JSP/JAVA语言的优点不言而喻,它对于用户界面的更新,其实就是由Web Server 进行的,给人的感觉更新很快;所有的应用都是基于服务器的,所以它们可以时刻保持最新版本;客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。因此,本系统采用JSP/JAVA语言开发,JDK 选择1.4.2版本。
JavaScript 是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML 超文本标记语言、Java 脚本语言(Java 小程序)一起实现在一个Web 页面中链接多个对象,与Web 客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML 语言中实现的。它的出现弥补了HTML 语言的缺陷,它是Java 与HTML 折衷的选择,具有以下几个基本特点。
脚本编写语言。JavaScript 是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本语言一样,JavaScript 同样已是一种解释性语言, 它提供了一个易的开发过程。
它的基本结构形式与C 、C++、VB 、Delphi 十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML 标识结合在一起,从而方便用户的使用操作。
基于对象的语言。JavaScript 是一种基于对象的语言,同时以可以看作一种面向对象的。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。
简单性。JavaScript 的简单性主要体现在:首先它是一种基于Java 基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java 是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格的数据类型。
安全性。JavaScript 是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。
动态性。JavaScript 是动态的,它可以直接对用户或客户输入做出响应,无须经过Web 服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为“事件”(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。
综合所述JavaScript 是一种新的描述语言,它可以被嵌入到 HTML 的文件之中JavaScript 语言可以做到回应使用者的需求事件 (如: form 的输入) ,而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程式所处理。
第4.2节 数据库及接口的选择
MySQL 是一种开放源代码的关系型数据库管理系统(RDBMS ),MySQL 数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL )进行数据库管理[4]。
由于MySQL 是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL 因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL 是管理内容最好的选择。
MySQL ,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。
MySQL 是瑞典的MySQL AB 公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。MySQL 完全适用于网络,用其建造的数据库可在因特网上的任何地方访问,因此,可以和网络上任何地方的任何人共享数据库。MySQL 具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点。MySQL 用C 和C++编写,它可以工作在许多平台(Unix ,Linux ,Windows )上,提供了针对不同编程语言(C,C++,JAVA等) 的API 函数;使用核心线程实现多线程,能够很好的支持多CPU ;提供事务和非事务的存储机制;快速的基于线程的内存分配系统;MYSQL 采用双重许可,用户可以在GNU 许可条款下以免费软件或开放源码软件的方式使用MYSQL 软件,也可以从MySQL AB公司获得正式的商业许可。
除了以上特点,MySQL 还有一个最大的特点,那就是在诸如 UNIX 这样的操作系统上,它是免费的,可从因特网上下载其服务器和客户机软件。并且还能从因特网上得到许多与其相配的第三方软件或工具。而在 Windows 系统上,其客户机程序和客户机程序库是免费的。
如果您正在寻找一种免费的或不昂贵的数据库管理系统,可以有几个选择,如,MySQL 、Postgres (一种免费的但不支持来自商业供应商引擎的系统)等。在将 MySQL 与其他数据库系统进行比较时,所要考虑的最重要的因素是性能、支持、特性(与 SQL 的一致性、扩展等等)、认证条件和约束条件、价格等。相比之下,MySQL 具有许多吸引人之处。
(1)速度快。MySQL 运行速度很快,开发者声称 MYSQL 可能是目前能得到的最快的数据库。
(2)容易使用,MySQL 是一个高性能且相对简单的数据库系统,与一些更大系统的设置和管理相比,其复杂程度较低。
(3)MySQL 对多数个人用户来说是免费的。
(4)4.1.1版本的数据库发行版仅仅只有21M ,安装完成也仅仅51M 。
(5)支持查询语言,MySQL 可以利用 SQL(结构化查询语言),SQL 是一种所有现代数据库系统都选用的语言。也可以利用支持 ODBC(开放式数据库连接)的应用程序,ODBC 是 Microsoft 开发的一种数据库通信协议。
(6)许多客户机可同时连接到服务器。MySQL 数据库没有用户数的限制,多个客户机可同时使用同一个数据库。可利用几个输入查询并查看结果的界面来交互式地访问 MySQL。这些界面为:命令行客户机程序、Web 浏览器或 X Window System 客户机程序。此外,还有由各种语言(如C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl)编写的界面。因此,可以选择使用已编好的客户机程序或编写自己的客户机应用程序。
(7)连接性和安全性,MySQL 是完全网络化的,其数据库可在因特网上的任何地方访问,因此,可以和任何地方的任何人共享数据库。而且 MySQL 还能进行访问控制,可以控制哪些人不能看到您的数据。
(8)可移植性,MySQL 可运行在各种版本的 UNIX 以及其他非 UNIX 的系统(如 Windows 和 OS/2)上。MySQL 可运行在从家用 PC 到高级的服务器上。
(9)开放式的分发,MySQL 容易获得;只要使用 Web 浏览器即可。如果不能理解某样东西是如何起作用的,或者对某个算法感到好奇,可以将其源代码取来,对源代码进行分析。如果不喜欢某些东西,则可以更改它。
接口的选择为JDBC 。
JDBC 数据访问接口,为支持Java 程序的数据库操作功能,Java 语言采用了专门的Java 数据库编程接口(Java Database Connecivity,JDBC),用于在Java 程序中实现数据库操作功能并简化操作过程[5]。
JDBC 支持基本SQL 语句,提供多样化的数据库连接方式,为各种不同的数据库提供统一的操作界面,JDBC 的工作流程如图4.1所示。
图4.1 JDBC工作原理详细解析图
JDBC 是由一系列连接(Connection )、SQL 语句(Statement )和结果集(ResultSet )构成的,其主要作用概括起来有如下3个方面:建立与数据库的连接,向数据库发起查询请求,处理数据库返回结果。
连接(Connection )是一个代表与数据库进行的程序连接的对象。通过连接,可以执行SQL 语句、返回数据库操作结果等。
事务是工作中的基本逻辑单位。数据库的主要责任是保存信息,因此它需要向用户提供保存当前程序状态的方法。同样,当事务执行过程中发生错误时,需要有一种方法使数据库忽略当前的状态,并回到前面保存的程序状态。这两种情况在数据库用语中分别称为提交事务和回滚事务。为了处理这两种情况,JDBC API 包括了两个方法commit()和rollback(),分别用于实现事务的提交和回滚。在使用这两个方法时通常要使用try ... catch语句捕获数据库实际运行操作时可能发生SQLException 。
数据源是在JDBC 2.0中引入的一个概念。在JDBC 2.0扩展包中定义了javax.sql. DataSource 接口描述这个概念。DataSource 对象除了将数据库和专门的 JDBC 驱动程序信息封装到一个单独的、标准化的对象中之外,还存储了建立数据库连接所需的所有信息,因此它可以作为Connection 工厂。用户只需要提供一个数据源的逻辑名称(Logic Name),就可以通过查询JNDI 服务,从数据源中获取相应的数据库连接。这个过程就像通过指定文件名可以在文件系统中顺利地找到一个文件一样。
javax.sql.DataSource 接口中定义许多不同的属性对于表的属相和描述如表4.1所示。
表4.1 接口定义的属性举例描述
使用数据过程中,我们首先要调用javax.naming.Context.bind()方法把数据源实例注册到命名服务环境中。bind()方法参数为注册名称和注册对象。注册成功后,在JNDI 目录下会生成一个.binding 文件,该文件记录了当前名称服务环境拥有的名称及对象。
第4.3节 应用服务器选择
Tomcat 是一个免费的开源的Serlvet 容器,它是Apache 基金会的Jakarta 项目中的一个核心项目,由Apache ,Sun 和其它一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总能在Tomcat 中得到体现。
Tomcat 提供了各种平台的版本供下载,由于Java 的跨平台特性,基于Java 的Tomcat 也具有跨平台性。
Tomcat 也提供其它的一些特征,如与SSL 集成到一块,实现安全传输。还有Tomcat 也提供JNDI 支持,这与那些J2EE 应用服务器提供的是一致的。说到这里我们要介绍一下通常所说的应用服务器(如WebLogic )与Tomcat 有何区别。应用服务器提供更多的J2EE 特征,如EJB ,JMS ,JAAS 等,同时也支持JSP 和Servlet. 而Tomcat 则功能没有那么强大,它不提供EJB 等支持。但如果与JBoss (一个开源的应用服务器)集成到一块,则可以实现J2EE 的全部功能。事实上,我们的很多中小应用不需要采用EJB 等技术,JSP 和Servlet 已经足够,这时如果用应用服务器就有些浪费了。
Apache 是一个强大的Web 服务器在处理静态页面、处理大量网络客户请求、支持服务的种类以及可配置方面都有优势,高速并且强壮。但是没有JSP/Servlet的解析能力。整合Apache 和Tomcat 可以看作是用Tomcat 做Apache 的JSP/Servlet解析插件,将两者优势结合起来。
Tomcat 短小精悍,配置方便,开源免费,能满足我们的需求,这种情况下我们自然会选择Tomcat 。
第4.4节 开发工具选择
MyEclipse 企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse )是对Eclipse ID 的扩展,利用它我们可以在数据库和J2EE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。MyEclipse8.5集成了Eclipse3.5.2,提升了团队协作开发、开发周期管理以及Spring 和Hibernate 的更好支持。用MyEclipse 的理由:可视化的HTML/JSP/JSF编辑器;JSP, Javascripte调试功能;良好的XML 编辑器;良好的Hibernate 集成。MyEclipse 无疑是最优秀的Java 开发平台之一。
第5章 数据库设计
第5.1节 数据库连接
JDBC 是Java 数据库连接(Java Data Base Connectivity) 技术的简称,是为各种常用的数据库提供无缝连接的技术[6]。JDBC 定义了Java 语言同各种SQL 数据之间的应用程序设计接口(API ),提高了软件的通用性。
JDBC 的关键技术是数据库连接驱动程序,针对这点大量的数据库厂商和第三方开发商支持Java 的JDBC 的标准,并开发了不同的数据库JDBC 驱动程序[7]。这些驱动程序可以分成四种:JDBC-ODBC Bridge驱动程序、JDBC Native Bridge驱动程序、JDBC-Network Bridge驱动程序、Pure Java JDBC Driver。
JSP 连接MySQL 数据库例程。
java.sql.Connection sqlConn; java.sql.Statement sqlStmt;
java.sql.ResultSet sqlRst;//注册JDBC 服务器[8] String DBUser=数据库用户名; String DBPassword=数据库密码; String DBServer=localhost ; String DBNAME=数据库名;
Class.forName(“org.gjt.mm.MySQL.Driver ”).newInstance(); //连接数据库[9]
sqlConn=java.sql.DriverManager.getConnection(DBUser,DBPassword); sqlStmt=sqlConn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);%>
第5.2节 数据库表的结构
在进行数据库设计这一过程是是根据各方面的要求和考虑然后才设计了现在的这个数据库模型。根据实际学生学籍管理系统的业务运行和需求,我们小组将信息分为,学生,院系,成绩,管理员[10]。数据库名为StuDB 。表名以ta_作为前缀,然后根据的表记录的对象,以其英文件单命名,如ta_admin(管理员表),如果不足以用一个单词来描述一个表的意思,需要用多个单词来对表进行描述,除首单词小写,以后的每一个单词的首字母大写,如果表名太长,使用单词缩写,。表中的字段也是如此,以英文件单词或者多个单来描述其意思,如stntId(学号) 。总之,命名的原则是:简洁而意思清楚,不产生异义,代码编写人员易懂,能提高程序开发效率。
数据库中所有表的名称及作用的详细列表如表5.1所示。
表5.1 数据库详细清单列表
对于学生表的设计主要涉及到了学生的属性,数据类型,长度的设计和主键的标记,如表5.2所示。
表5.2 表ta_student的数据库表的详细设计
对于管理员的数据库表的设计包括管理员属性,属性的类型,长度大小,和主键的标记。如表5.3所示。
表5.3 ta_admin的数据库的详细设计
对于课程的数据库的设计包括,数据库的属性,数据类型,数据的长度和主键的标记,所表5.4所示。
表5.4 ta_class数据库的详细设计
对于院系的数据库表的设计,包括院系的属性列表,数据类型和长度的标注和主键的选择。如表5.5所示。
表5.5 ta_department数据库的详细设计
第5. 3节 实体及E-R 图
本系统中根据上面的设计规划出的实体有,学生学籍管理、学生信息管理、用户管理。
实体—关系模型(Entity —Relationship Module ,简称E —R 模型)是数据库结构设计常用的方法。E —R 图中的巨型表示实体,菱形表示实体间的联系,联系的类型可用1:1或M:M表示,圆角表示实体的有关属性。
学生实体分为,学生(学号(stntId ),姓名(stntName ),性别(sex ),生日(birthday ),民族(folk ),政治面貌(polity ),卡号(idCard ),籍贯(hometown ),住址(homeAdderss ),电话(telphone ),邮箱(emile ),学制(stydType ))。
管理员实体分为,管理员(ID (userId ),姓名(userName ),密码(password ),等级(role ),登录时间(loginTimes ))。
班级实体分为,班级(班级号(classID ),专业号(majorId ),年限(classYear ),)。 本系统的E —R 图描述了不同实体间与系统的总体关系,如图5.1所示。
图5.1 学籍管理总体ER 图及详细说明概述
第5. 4节 数据字典
数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后获得的主要成果。数据字典通常包括以下几部分:
(1)数据项,数据项是不可在分的数据单位。
(2)数据结构,数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据结构组成,或由若干数据项和数据结构混合组成。
(3)数据流,数据流是数据结构在系统内传输的路径。
(4)数据存储,数据存储是数据及结构停留或保存的地方,也是数据流的来源和去向之一。
(5)数据字典,是关于数据库中数据的描述,即对原数据的描述。
本系统对院系的名称,描述,及组成在数据库中数据描述如表5.6所示。
表5.6 对系别描述的数据字典
本系统对在数据库中学生的名称,描述及组成信息描述如表5.7所示。
表5.7 对学生描述的数据字典
本系统对在数据库中班级的名称,描述,组成等详细信息的阐述如表5.8所示。
表5.8 对班级描述的数据字典
第5.5节数据流图
数据流程图(Data Flow Diagram ,简称DFD )是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。它的绘制依据是现行系统流程图,数据流程图是管理信息系统的总体设计图。
数据流程图的基本符号是数据流图的基本单位,具体的数据流图如图5.2所示。
图5.2 流程图的基本符号
数据流图的顶层图是进入系统的初步框架,是进入系统的入口如图5.3所示。
图5.3 系统顶层示意流程图
第6章 详细设计
第6.1节 整体布局及功能描述
学生学籍管理系统是一个数据库管理系统[11],在实际开发中,我们根据数据库中表的结构来设计程序代码中的各个模块,包括管理员登录验证,院系管理模块,班级管理模块,学生信息管理模块,学生成绩管理模块。所有Java Bean以及 Servlet文件均放在com.qichunren 下的相应的包中,如连接数据库的Bean 文件位于com.qichunren.database 里,获取各种样式的各种时间的Bean 文件还有系统创建学号的Bean 文件均位于com.qichunren.util 里. (注:此util 包中放各种实用类)。程序界面的图片文件位于images 下。所有的JSP 代码均放在WebRoot 下,便于查看。
前台(仅一个页面,index.jsp )登录界面。
后台(管理界面)采用左T 框架结构,顶部为管理系统的头部,用来显示管理系统的名称,以及一些常用操作的链接,所有菜单项位于左侧页面,而且为了便于显示,左侧菜单项使用JS 中的卷帘效果,右侧页面为工作区。
界面设计规范。
原则:总体协调,舒服不花哨。
界面边角注意颜色渐变,以实现总体上的立体视觉效果。总体色系为 淡青绿色。 此项目主要是做有关于学生学籍进行管理的应用型软件,它主要使用对象是管理员即老师,能够减少老师的工作量和工作时间,快速而准确的对每个学生进行管理。
联网用户访问学生学籍管理系统的互联网地址[12],登录后台,进入管理系统的首页。学生信息管理模块分为,新生信息录入,学生基本信息修改,学生信息查询。院校信息管理分为,院系添加,院系管理,专业添加,专业管理。管理员管理模块分为,修改当前管理员的密码,添加管理员,删除管理员(实现分角色对本系统进行管理)。
总体的设计模块包括管理员从登陆系统后,一系列对学生信息的操作如图6.1所示。
图6.1 整体布局及其功能描述的总体框架
第6.2节 登陆管理
在管理员登录验证中,在管理员符合各项登录条件后,将用户请求转向管理后台的首页,与此同时在数据库中产生登录日志,以备系统管理员日后查看。登录条件包括用户名存在,密码正确,状态为正常,验证码正确。
登录界面是管理员进入程序的入口,在正确输入用户名,密码和验证码后,可以进入系统,如图6.2所示。
图6.2 管理员登陆的首页面进入系统的入口
第6.3节 学生信息管理模块
录入新生信息(包括基本信息,联系方式,在校的学籍信息等等) 信息录入成功后此时学生的信息已经在数据库中产生了一条记录,主要实现对学生基本信息的管理,也是该系统最最基本的模块。包含功能有录入信息、查询信息、修改信息、班级管理、等几个主要的功能。
录入信息
对新入学的新生或者是转入该校的学生进行新的基本信息的录入,方便于对该生的统一管理。在设计系统的数据库时,当基本信息输入成功后,系统将自行把资料存储与StudentInfo 学生个人信息表中。而当录入的信息出错或者是该学生的信息已经存在页面将转如修改学生信息的页面。
管理员通过了解学生的基本信息,对学生的信息进行录入,完成对学生的注册,保存学生的学籍,如图6.3所示。
图6.3 录入详细学生信息实现管理学生页面
第6.4节 院系管理模块
院系管理完成对院系基本情况的完善及添加。要添加院系,添加专业,添加完院系或者专业后,可以查看院系,专业信息,并对其进行修改。
管理员添加院系,专业,如果对于所添加的信息需要修改,则修改具体的信息情况如图6.4所示。
图6.4 添加编辑院系管理页面
第6. 5节 班级管理模块
班级管理模块中要实现对班级的管理,可以添加班级,查看班级实现班级的管理。
输入正确的班级,选择所要输入班级的所在院系及专业实现对班级的添加,具体的实现界面如图6.5所示。
图6.5 添加班级管理班级信息页面
第6. 6节 管理设置模块
管理设置模块要实现超级管理员对管理员的添加,删除管理员,修改管理员密码,查看管理员信息,查看登录日志。其中一般管理员只能查看自己的信息及修改自己的密码,不能增加,删除管理员,还能查看登陆日志。
通过输入正确的账号和密码可以增加管理员,还可以删除管理员,具体的实现界面如图6.6所示。
图6.6 管理管理员基本信息页面
结 论
回顾该系统从选题,到调研、需求分析、设计、编码实现、测试等,论文的撰写,这系列的过程,感想颇多,收获也很多。
通过这次学习,把我所学的JAVA 知识都灵活运用上了。其中我用到的数据库是MySQL ,并且使用MyEclipse 的开发工具,用JAVA 、JSP 语言。主要涉及到MySQL 数据库的连接,网页的设计与美化,还有JSP 动态网页的实现等,让我受益非浅。其中我主要用到的技术还学会了很多软件的使用、开发的方法经。
本系统分为不同的管理员登录,分为超级管理员和普通管理员。超级管理员可以实现对学生基本信息的管理,成绩管理,班级管理,院系管理,管理设置,公告管理,普通管理员和超级管理员的区别是不能对管理员的添加、修改功能,只能查看公告,不能发布公告。
开发过程中,我习惯于每天关机前备份,出错误后,就把备份的代码和数据库还原;可是在此过程中,多次发现同一个问题:备份时能正确执行页面功能,而还原后却不能;这个问题一直困扰着笔者,百思不得其解。直到前不久,与同学聊起数据库时,才发现了问题的症结所在:每次备份数据库时,不能在原有的数据库上覆盖备份,这样备份的只能是数据库的增量;在还原数据库时,包含增量,从而就难免出错。从那以后,进行数据库备份时,都重新选择一个新的位置或者先把要备份处的旧的数据库删除掉。这样就避免了以上错误,省了好多工夫。
而数据库与主程序之间的链接问题主要表现在对MySQL 的不十分熟悉上,过程中对计算机的各种设置不是很了解。就如,系统的登陆和考试管理模块,出现了第一次登陆或进入是没什么问题,当退出后再次进入的时候就链接不上。这个问题困扰了笔者达两个星期之久,翻阅了很多的资料都没能到完满的解决。后来在导师的指导下发现可能是MySQL 的设置出现了不正确或不标准。
在开发系统过程中,本人发现在知识经验方面都存在着不足。另外,在这个开发过程中,时间也比较仓促。因此,系统必然会存在一些缺陷和不足。谨请各位老师提出宝贵的意见。感谢指导老师对我认真细心地教导!
参考文献
[1]刘世峰. 数据库基础与应用[M].北京:中央广播电视大学出版社, 2001.
[2]谢季萍,徐孝凯. MySQL 上机操作指导[M].北京:中央广播电视大学出版社, 2004. [3]张健沛. 数据库原理及应用系统开发[J].北京 2011:201-289. [4]萨师煊,王珊. 数据库系统概论[M].北京:高等教育出版社,2000.
[5]贾讽波,杨树青,杨玉顺. 数据库应用实例[M]. 北京:人民邮电出版社,2003. [6]罗晓芾. 学生学籍管理的设计与实现(高级)[J]. 北京 2007:187-532. [7]李红. 管理信息系统开发与应用[M]. 北京:电子工业出版社,2003. [8]刘新. Java开发技术大全[M]. 北京:清华大学出版社,2009. [9]周之英. 现代软件工程[M]. 北京:科学出版社,2003
[10]Inmon W H. Mathematical Statistics and Data Analysis[M]. America :Brooks Cole,2000.
[11]Kimball R. Practical Database Programming[M]. English :Wiley-IEEE Press, 2003. [12]Imhoff C. Database Modeling and Design[M]. America:Morgan Kaufmann,2004. [13]Mattison R. Database of Dose Coefficients[M]. America:Elsevier,2003:408-450. [14]张克东. 软件工程与软件测试自动化教程[M]. 北京:电子工业出版社,2002. [15]郑人杰,殷人昆,陶永雷. 实用软件工程[J]. 北京 2003: 8-39.
致 谢
此次毕业设计完成的前提是老师提供了悉心的关怀、适时的鼓励和精心的指导,在此表示衷心地感谢!
开发设计初期,由于对学生学籍管理的流程模式不太熟悉,所以对开发模式、设计思想都很茫然。这时候,是老师不厌其烦地帮助分析、提建议。老师平日里教学繁忙,利用自己休息的时间,给了我很多意见并指出其中的错误和不足之处,使我得到不少的提高。在老师的悉心关怀和精心指导下,本人对系统的框架有了一定的了解。每天都要不断的学习有关学籍制度的资料,影响到了设计,很担心影响了进度;此时,又是老师不断地从行动和言语给予鼓励和支持,再后来老师帮助分析、总结系统需要改进和完善的地方,让本人在困难的时候能够有恒心继续下去,从而完成了毕业设计。此外,由于本人在毕业设计的同时也在一家公司实习,这导致时间上有些紧迫,这时又是老师给予了本人莫大的鼓励和支持。
老师认真负责的工作态度、严谨的治学风格和关爱学生的满腔热情,特别是在帮助本人一遍一遍修改论文的过程中使本人深受感动;同时老师们在工作方面也给予了种种建议,帮助本人清楚的认识到如今的就业环境。在此,再次表示诚挚地感谢!
另外在系统设计过程中,还要感谢给予我帮助的同学们和网上提供相关资料的朋友们以及参考文献的作者们。