研究生管理系统设计案例.docx_第1页
研究生管理系统设计案例.docx_第2页
研究生管理系统设计案例.docx_第3页
研究生管理系统设计案例.docx_第4页
研究生管理系统设计案例.docx_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

研究生管理系统设计案例第一章 绪论11.1 引言11.2 项目开发背景11.3 项目开发意义21.4 项目开发目标21.5 项目预期效果3第二章 研究生管理信息系统需求分析42.1 功能分析42.2 可行性分析7第三章 研究生管理信息系统方案设计与论证83.1 B/S模式与C/S模式的比较83.2 JSP与ASP的比较103.3 以MySQL作为后台数据库的理由113.4 本系统采用的方案123.5 软件安装与配置13第四章 研究生管理信息系统数据库设计144.1 数据库简述144.2 数据库设计144.3 数据库连接代码18第五章 研究生管理信息系统功能设计195.1 功能模块设计195.2 功能代码设计29第六章 研究生管理信息系统应用与测试346.1 测试目的346.2 测试用例34第七章 方案设计中遇到的问题和解决方法387.1 JSP的中文乱码问题387.2 速度问题387.2.1 增加冗余列,减少表间的连接387.2.2 增加派生列,减少查询统计时间397.2.3 垂直分割表,控制表的字段个数397.2.4 使用索引提高系统性能397.3 界面友好性问题397.4 方案选择问题407.5 系统的安全性问题41结论43附录程序清单44第一章 绪论1.1 引言近几年来,随着高校扩招的不断“升级”,我国研究生教育的规模也在不断扩大。研究生年招生人数从1978年恢复研究生教育时的1万人增加到2003年的27万人,报考人数更是从1978年的6.3万人上升到2003年的79万余人,近几年报考人数年均增长约30。在2002年中国研究生院院长联席会议上,教育部长周济在讲话中指出,目前我国在校研究生数将突破100万大关,我国己经进入研究生教育发展关键时期。在报考和录取研究生人数持续多年攀高后,人们对研究生的教育管理有了更多的思考。研究生教育是高等教育的最高层次,与本科生教育的最大区别在于本科生是专业应用型人才,研究生是知识创新型人才。研究生教育管理工作同本科生教育管理工作存在很大差异,具有其自身特点:1.素质高,管理信息量大以国务院学位办要求各学校学位授予单位上报的数据量来看,每个攻读硕士学位的研究生的信息,有74个字段属性,约500个汉字;每个以同等学力申请硕士学位的在职人员信息为154个字段属性,约1350个汉字。除此之外还有一些附加信息管理,如助学金管理,病退、休学学生的学籍处理,在职硕士生的分阶段收费管理等。管理工作中数据量之大显而易见。2.报表多针对不同的主管部门报表格式各不相同,工作时限性强,工作程序繁杂。随着我国研究生教育事业的发展和改革,规模化的研究生教育的逐步形成,研究生教育管理的信息量还会不断增加,管理工作趋向于多层次、多方位,管理工作日趋复杂。1.2 项目开发背景我国在实行研究生学位教育制度后不久,许多高校在研究生业务管理上采用了计算机管理。随着计算机技术、网络技术及研究生学位教育制度的发展,我国研究生计算机管理信息系统大致经过了三个阶段。80年代基本上采用计算机集中处理数据。当时由于我国研究生学位教育刚刚起步,招生规模不大,一般采用Dbase数据库实现一些简单功能的单机系统。这些系统有研究生招生管理信息系统、研究生培养管理信息系统、研究生学位管理信息系统。这些系统在整个研究生管理工作中相互独立,大多数高校具有以上系统中的一种。90年代随着研究生招生规模的逐年扩大,研究生业务管理工作逐渐细化,单机处理的模式逐渐不能满足工作的需要。同时,基于Internet计算机分布处理系统在我国开始广泛应用,一些资金较充足的研究生院设计开发了具有计算机分布处理功能的研究生管理信息系统。这种管理信息系统具有软、硬件环境造价昂贵、系统移植性差的缺点,因此并没有得到大范围的应用。90年代后期以来网络技术的飞速发展带动了计算机技术的革新,也带来了研究生管理信息系统的革命。研究生管理走上了网络管理的新时代。网络成本的下降带来了校园网的普及,这时出现了功能单一的C/S(客户机/服务器)构架的研究生管理信息系统。同时出现了一些借助WEB技术运行于局域网的B/S(浏览器/服务器)构架的具有查询功能研究生管理信息系统。计算机集中处理80年代计算机分布处理90年代网络管理90年代后我国研究生管理信息系统的发展历程如图1.1所示:图1.1 我国研究生管理信息系统的发展历程我校现有在校研究生500多人,具有计算机科学与技术学院,信息工程学院,制造科学与工程学院,土木工程与建筑学院,材料科学与工程学院,外国语学院等19个硕士点,其中材料科学与工程学院和土木工程与建筑学院为全国重点研究学科,其它还有省级重点研究学科5个。我校研究生管理从业务上大致可分为招生入校,在校培养,学籍管理,学位授予,学科建设,导师信息等多个模块。研究生部在研究生教育管理中的信息收集基本上是按部门计算机辅助管理模式,各业务部门的业务流程,工作衔接基本是按照人工数据处理方式进行。这样的信息采集、处理、传输、存储和使用,不仅效率低下,而且是分散的,数据冗余度大,且不能实现信息资源的共享。目前,我校研究生管理文件主要是纸质文件,这种管理形式存在如下问题:1.文件的收集、管理主要通过手工抄写,以纸质文件的形式保存,占库存面积大。2.文件提取是通过手工抄写或复印机复印,手续繁琐,效率低,容易出现人为因素。3.查阅案卷和借阅过程中容易造成文件的破损,甚至丢失。4.随着近年来各高校研究生招生规模的逐渐扩大。以我校为例,仅就学生学习成绩登记一项,每生每学期按8-10门课计算,工作人员每学期就要登4000-6000门次课程成绩,其工作量之大可想而知。1.3 项目开发意义在如今的研究生教育管理工作中,软件的发展已远远落后于硬件的发展。软件发展水平的相对滞后,不仅严重影响了研究生教育管理水平的提高,相对于高速发展的硬件(网络)来说,也是一种巨大的浪费。为了提高我校研究生教育的管理水平、工作效率,减轻教务管理工作的压力,开发符合我校研究生教育自身管理特点的管理信息系统软件势在必行。1.4 项目开发目标采用B/S模式,以JSPServlet+JavaBean模式为技术核心,以MySQL作为后台数据库来开发研究生管理信息系统,配合学院网站一起使用。以提高研究生管理工作的开放性,使研究生管理达到网络化,规范化,减轻教务管理工作的压力,为教师和学生提供快速、便捷的服务,为学校的研究生工作提供有效的决策支持,同时也是把我校建成二十一世纪全国重点大学的需要。1.5 项目预期效果此系统的开发成功,可以使教学办老师有序地规划研究生教学任务,老师可以事先对教学任务进行安排,研究生可以清楚地了解自己的课程;对研究生的资料管理从以前繁琐的手工操作改革为电子化处理,导师可以方便地掌握学生信息;对研究生成绩管理也更加系统化、规范化;同时学院可以更清楚地了解导师的详细资料,研究生也能方便地查询到导师的基本信息;为全院师生提供开放、快速、便捷的网络化服务。第二章 研究生管理信息系统需求分析研究生信息管理工作烦琐复杂,单纯的人工管理方式已经不能完全适应形式发展的具体要求,这就需要有一个系统、自动的管理系统来完成这一工作,实现对研究生信息的维护。该项目主要针对现研究生信息管理工作的具体需求,拟实现一个B/S模式的信息管理系统。针对研究生信息管理工作,需要实现如下功能:1.教学任务管理模块需要实现教学办老师对研究生的教学任务(相关字段例如:教学班号等)进行查询、删除、添加,修改,并在操作时提供系统安全性提示。2.个人资料管理模块需要实现教学办老师对整个学院研究生的详细资料(例如:研究生的学号、姓名、专业、研究方向、导师姓名)进行查询、添加,删除,修改。3.成绩管理模块需要实现教学办老师对整个学院研究生的成绩(例如:研究生的学号、姓名、课程名称、分数、任课教师等)进行查询、添加,删除,修改。4.导师信息管理模块教学办老师对整个学院研究生导师信息(例如:导师代码、导师姓名、学历、学位等)进行查询、添加,删除,修改。5.权限管理模块需要实现对用户进行权限设置,分为管理员权限和普通用户权限两个等级。只有管理员有添加,修改,删除权限。普通用户看不到此模块。6.个人密码修改模块需要实现用户对自己的密码进行修改,管理员和一般用户的界面和功能一样。2.1 功能分析该系统主要运用于计算机科学与技术学院,目的是实现研究生信息网络化,提高研究生教育质量和管理水平。要求主要分为6个模块:研究生教学任务管理模块,研究生个人资料管理模块,研究生成绩管理模块,研究生导师信息管理模块,权限管理模块,个人密码修改模块。1.研究生教学任务管理管理员可以添加,查询,修改,删除教学任务信息。一般用户只能查询教学任务信息。所需字段定义如表2.1字段名称类型来源必填项约束条件教师代码字符输入教师姓名字符输入课程代码字符输入课程名称字符输入教学班号字符输入课程性质字符输入上课类型字符输入考核性质字符输入授课地点字符输入授课讲次字符输入数值上课总人数字符输入数值理论学时字符输入数值实践学时字符输入数值起始周字符输入数值结束周字符输入数值设计学时字符输入数值实习学时字符输入数值类型字符输入表2.1 教学任务管理字段表2.研究生个人资料管理管理员可以添加,查询,修改,删除研究生个人资料信息。一般用户只能查询研究生个人资料信息。所需字段定义如表2.2字段名称类型来源必填项约束条件学号字符输入数值姓名字符输入曾用名字符输入性别字符输入民族字符输入政治面貌字符输入寝室号字符输入联系电话字符输入数值籍贯字符输入身份证号字符输入数值电子信箱字符输入出生日期字符输入格式:2001-01-31邮政编码字符输入数值父母姓名字符输入家庭电话字符输入数值家庭住址字符输入学籍状态字符输入毕业学校字符输入准考证号字符输入数值专业字符输入身高字符输入cm血型字符输入体重字符输入kg研究方向字符输入个人特长字符输入备注字符输入银行卡号字符输入数值导师姓名字符输入表2.2 个人资料管理字段表3.研究生成绩管理管理员可以添加,查询,修改,删除研究生成绩信息。一般用户只能查询研究生成绩信息。所需字段定义如表2.3字段名称类型来源必填项约束条件学号字符输入姓名字符输入课程名称字符输入任课老师字符输入分数字符输入学期字符输入表2.3 成绩管理字段表4.研究生导师信息管理管理员可以添加,查询,修改,删除导师信息。一般用户只能查询导师信息。所需字段定义如表2.4字段名称类型来源必填项约束条件导师代码字符输入导师姓名字符输入学历字符输入学位字符输入毕业时间字符输入格式:2001-01-31所学专业字符输入毕业学校字符输入职称字符输入所在部门字符输入担任职务字符输入职称评定时间字符输入所在教研室字符输入论文题目字符输入表2.4 导师信息管理字段表5.权限管理模块 只有管理员有添加,修改,删除权限。普通用户看不到此模块。所需字段定义如表2.5字段名称类型来源必填项约束条件用户名字符输入用户角色字符选择admin/common用户密码字符输入表2.5 用户角色字段表6.个人密码修改模块 该模块需要对用户自己的密码进行修改,管理员和一般用户的界面和功能一样。所需字段定义如表2.6字段名称类型来源必填项约束条件用户名字符输入用户密码字符输入表2.6 用户字段表2.2 可行性分析可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面:1.经济可行性:主要是对项目的经济效益进行评价,本系统作为一个设计,无需开发经费,对于学院在经济上是可以接受的,并且本系统实施后可以显著提高研究生管理工作效率,有助于学院完全实现网络化管理,因此本系统在经济上是可行的。2.技术可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的B/S模式进行开发,结合了JSP技术,数据库采用MySQL,三者的结合为本系统的开发提供了坚实的技术保证。目前管理信息系统从技术上来说己相当成熟,伴随着信息领域和其他领域的发展,其自身也在不断的发展完善,就其目前的发展水平来说,己经基本能够满足我们的需要。3.管理可行性:学院各级主管领导对于计算机在教学管理工作中的应用具有远见卓识,高层领导能够取得共识,并具有大刀阔斧,排除万难的魄力和勇气。计算机学院研究生部在业务上具有相对独立性,业务领域数据相对完整,具有条理性,这些都为设计和实施管理信息系统提供了便利条件。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。第三章 研究生管理信息系统方案设计与论证3.1 B/S模式与C/S模式的比较C/S(客户机/服务器)系统是在七、八十年代产生并发展起来的。客户机服务器是个逻辑概念,它包括客户机和服务器两部分。客户/服务器系统显著的特点是:把系统任务放在客户机和服务器上分开执行,服务器为客户机提供服务。客户机可向服务器提出请求,服务器接受请求,进行一系列处理、计算,将结果返回客户机。在90年代后期C/S模式被应用到研究生管理信息系统中。在此之前多数高校采用的是单机处理系统及造价昂贵的分布式处理系统。C/S模式的研究生管理信息系统一般都是数据库(数据处理)的C/S模式,它将DBMS和数据库应用分开,对数据库的处理放到了服务器端进行。当客户端要处理数据时,只需向数据库服务器发送SQL请求,然后由服务器处理请求,并将处理结果送回客户端。数据库服务器端一般由高性能的计算机担当(在实际应用中,一般以小型计算机或高性能工作站做服务器),对数据库的数据处理由高性能的DBMS处理。这样,有效地提高了数据库的处理能力,既使客户端从繁重而复杂的数据库处理中解脱出来,又减轻了网络的负担,提高了系统性能。C/S模式研究生管理信息系统的优点:1.实现了研究生管理工作的计算机统一管理C/S模式的研究生管理信息系统改变了以往独立单机单功能的计算机集中处理模式,使得各项管理采用统一的数据库,可以为不同的客户端应用开发了不同的应用程序。2.实现了研究生管理部门间的数据共享由于采用了统一的数据库,避免了以前单机单功能的系统需要单独开发系统数据接口的方式。3.提高了系统的处理速度C/S模式的研究生管理信息系统把处理任务在客户机和服务器间分开进行。服务器端专门处理数据库操作,客户机负责处理人机对话以及相关计算,任务分工很显然提高了系统的处理速度,也充分地利用了系统资源。4.数据平台与客户机无关由于数据库采用集中管理,客户通过SQL语言访问数据库数据。因此,客户不限于一种平台。5.数据库与客户程序无关由于数据库采用集中管理,客户通过SQL访问数据库数据,因此,当数据库平台更换时,客户程序将不需要或只需要极少量的改变,并且客户机平台可以访问不同的DBMS。6.减少了对工作站(客户机)的要求并延长了工作站的寿命由于大量复杂的数据库操作是在后端DBMS进行的,DBMS的速度不受工作站速度的制约。因此,工作站只要能够运行前端软件即可,从而有效的延长了许多型号比较老功能比较低、没有运行复杂DBMS能力的PC机的使用寿命。7.维护数据库的完整性、一致性由于对数据的处理都放在服务器上集中管理,有效地保证了数据的完整性、一致性。C/S模式研究生管理信息系统的缺点:C/S模式的管理系统开发一般着重于客户端开发,即客户端用PowerBuilder,Delphi,NewEra,Uniface等工具开发应用程序,服务器端则以大型DBMS作后台,提供数据管理服务。研究生管理信息系统的C/S模式可以说是采用了企业管理信息系统的经典模式,但现存的C/S模式的研究生管理信息系统仍存在着许多问题1.维护、升级非常不方便在管理系统中,往往将系统应用功能分成不同的功能模块分装在不同的客户机上。不同客户机所要求的功能不尽相同,所装的应用程序也随之不同,这样容易造成管理混乱,维护非常不方便。针对用户要求的改变,客户端应用软件可能要增/减功能或修改用户界面,那么该软件应用范围越广,软件维护的开销就越大。另外,应用程序要升级,则要将客户机逐一升级,这样也是很不方便2.缺乏开放性,应用范围仅限于局域网内,不利于远程教育的发展。局域网之外的用户(Internet用户)难以访问系统资源,系统内的客户机也不便访问系统外资源。现代远程教育利用Internet进行远程教学及管理活动,缺乏开放性的系统阻断了远程学员对系统的教育资源的访问,很难实现现代远程教育。3.扩充性差若要在系统中增加一个客户机,必须给它先装上开发工具(即运行环境),再给它装上应用程序,并进行一番设置,方可运行。4.大量数据采集方式单一由于客户端数量有限,因此当需要采集大量数据时只能依靠客户端手工输入,降低了工作效率,并没有完全改善管理人员的工作负担。90年代以来,Web应用得到了飞速的发展,Web的B/S应用是C/S的一种具体表现形式。研究生管理信息系统的B/S模式是利用INTERNET/INTRANET Web技术,将应用程序放置于Web服务器上,客户端统一使用浏览器访问Web服务器并运行应用程序。研究生管理信息系统的B/S模式与C/S模式相比具有以下优点:1.跨平台操作现在,由于INTERNET的WWW技术的快速发展,几乎任何一种操作系统上都有浏览器产品,从而方便地实现了客户端跨平台操作。即任何一台机器,只要装有Web浏览器,均可以作为客户机访问管理系统,运行管理系统应用程序。2.维护、升级非常方便由于应用程序放在服务器上,客户端几乎不需维护,对整个系统的维护全部集中在服务器端,非常方便。另外,应用程序的升级也只需在服务器端进行,而不必像以前对客户端逐一升级,大大地减少了工作量,高效而方便。系统要对某一客户机(或用户)实现功能增/减,只需在服务器上授予或收回部分权力即可,管理非常方便。管理维护人员再也不用奔波于各客户机所在地进行维护管理。3.减少整个系统的成本由于客户端只需装有Web浏览器即可,不必装其他的软件,这对客户机的硬件要求很低,尤其是今后网络计算机的推出,将大大降低客户端成本。4.具有良好的开放性,有利于远程教育的发展在这种系统中,系统外的用户(如Internet用户)可方便地访问系统内资源,他们只需知道系统站点就可以访问他们允许访问的资源。系统内的用户也可以方便地访问系统外资源(如Internet资源),因为客户机本身是用Web浏览器在执行管理系统应用,所以要访问Internet不需更换界面,只需修改URL地址即可。5.应用范围广泛系统要增加某一客户机(或某一用户),只需在服务器授权即可,而不必像以前那样要先给客户机装工具或其他软件,再装上应用程序。同理,系统要减少一用户,只需在服务器上收回权力即可。6.能与Internet应用很好的结合起来Internet应用的执行一般是用浏览器浏览Web页(HTML文档),其操作方式与B/S模式的研究生管理信息系统应用一样,两者的操作模式得到了很好的统一,用户再不必更换界面来执行这两种应用。7.有利于数据的大范围采集利用B/S模式的优势,通过WEB进行数据采集,明显提高了研究生管理人员的工作效率,降低了研究生管理人员的工作负担。当然,B/S模式在实际应用中也存在着一些缺点。1.安全问题研究生管理信息系统从Intranet向Internet扩展是一个大势所趋的问题。WEB技术在应用的过程中暴露了越来越多的安全问题。研究生系统管理了研究生管理工作中的所有数据,对系统的安全性要求较高。随着系统由Intranet向Internet的扩展,本来出现在系统内部的安全问题也被放大到整个Internet上。因此WEB技术的安全性问题限制了基于WEB的B/S模式的研究生管理信息系统的发展。导致了B/S模式的研究生管理信息系统仍然只能在局域网内使用。2.大量计算问题在B/S模式管理系统的应用中一般将业务逻辑层放置在WEB服务器上,当运行大量计算或长事务处理时严重的影响了系统的工作效率,使得用户不得不靠不断增加硬件投资提高WEB服务器的性能和数量。3.很难实现全部管理功能由于WWW技术的局限性,研究生管理信息系统很难完全利用B/S模式实现。现有的B/S模式的研究生管理信息系统也仅实现了部分的管理功能。然而总体来说,本人认为在开发该研究生管理信息系统中,B/S模式优越与C/S模式,因此选用了B/S模式3.2 JSP与ASP的比较JSP与Microsoft的ASP技术非常相似。两者都提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。在ASP或JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP和JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。ASP和JSP都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。ASP的编程语言是VBScript之类的脚本语言,JSP使用的是Java,这是两者最明显的区别。此外,ASP与JSP还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在ASP下,VBScript代码被ASP引擎解释执行;在JSP下,代码被编译成Servlet并由Java虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。按照本系统的技术要求,本人采用了JSPServlet+JavaBean模式为技术核心。3.3 以MySQL作为后台数据库的理由MySQL是一个广受人们喜爱的半商业的数据库。MySQL可运行在大多数的Windows平台和Linux平台(i386,Sparc,etc),以及少许非Linux甚至非Unix平台。1.安装 可以在MySQL站点上获得大多数主要的软件包格式(RPM、DBE、TGZ),客户端库和各种语言“包装”(Wrapper)可以由分开的RPM格式获得。RPM格式的安装没有多大麻烦,并且无需初始配置,故MySQL守护进程在多用户模式下重启时被启动运行。MySQL的守护进程(mysqld)消耗很少的内存,并在只有在执行真正的查询时才装载到处理器上,这意味着对小型数据库来说,MySQL可以相当轻松地使用而不会对其他系统功能有太大的影响。 本系统用的是mysql-5.0.1-alpha-snapshot-win-noinstall.zip版本的,Windows的安装免费版。2.数据类型 MySQL与大多数其他数据库系统不同的是提供两个相对不常用的字段类型:ENUM和SET。ENUM是一个枚举类型,非常类适于Pascal语言的枚举类型,它允许程序员看到类似于red、green、blue段值,而MySQL只将这些值存储为一个字节。SET也是从Pascal借用的,它也是一个枚举类型,但一个单独字段一次可存储多个值,这种存储多个枚举值的能力也许不会给你一些印象(并可能威胁第三范式定义),但正确使用SET和CONTAINS关键字可以省去很多表连接,能获得很好的性能提高。3.SQL兼容性 MySQL包含一些与SQL标准不同的转变,大多数被设计成对SQL语言脚本语言不足的一种补偿。然而,另一些扩展确实使MySQL与众不同,例如,LINK子句搜索是自动地忽略大小写的。MySQL也允许用户自定义SQL函数,一个程序员可以编写一个函数然后集成到MySQL中,并且其表现的与任何基本函数如SUM()或AVG()没有什么不同。函数必须被编译到一个共享库文件中(.so文件),然后用一个LOADFUNCTION命令装载。它也缺乏一些常用的SQL功能,没有子选择(在查询中的查询)。视图(View)也没了。当然大多数子查询可以用简单的连接(join)子句重写,但有时用两个嵌套的查询思考问题比一个大连接容易。同样,视图仅仅为程序员隐蔽where子句,但这正是程序员们期望的另一种便利。4.存储过程和触发器 MySQL没有一种存储过程(StoredProcedure)语言,这是对习惯于企业级数据库的程序员的最大限制。多语句SQL命令必须通过客户方代码来协调,这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力,这样才允许的多语句运行。5.参考完整性(ReferentialIntegrity-RI)MySQL的主要的缺陷之一是缺乏标准的RI机制;然而,MySQL的创造者也不是对其用户的愿望置若罔闻,并且提供了一些解决办法。其中之一是支持唯一索引。Rule限制的缺乏(在给定字段域上的一种固定的范围限制)通过大量的数据类型来补偿。提供检查约束(一个字段相对于同一行的另一个字段的之值的限制)、外部关键字和经常与RI相关的“级联删除”功能。当不支持这些功能时,SQL分析器容忍这些语句的句法。这样做目的是易于移植数据库到MySQL中。6.安全性 对MySQL最大的抱怨是其安全系统,它唯一的缺点是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。通常SQLGRANT/REVOKE 语句到最近的版本才被支持。MySQL的编写者广泛地记载了其特定的安全性系统,但是它确实需要一条可能是别无它法的学习过程。7.备份和恢复、数据导入/导出 强制参考一致性的缺乏显著地简化备份和恢复,单靠数据导入/导出就可完美复制这一功能。LOADDATAINFILE命令给了数据导入很大的灵活性。SELECTINTO命令实现了数据导出的相等功能。另外,既然MySQL不使用原始的分区,所有的数据库数据能用一个文件系统备份保存。数据库活动能被记载。与通常的数据库日志不同(存储记录变化或在记录映像之前/之后),MySQL记载实际的SQL语句。这允许数据库被恢复到失败前的那一点,但是不允许提交(commit)和回卷(rollback)操作。8.连接性MySQL客户库是客户/服务器结构的C语言库,它意味着一个客户能查询驻留在另一台机器的一个数据库。然而MySQL真正的强项处于该库中的语言“包装器(wrapper)”,Perl、Pathon和PHP只是一部分。Apache的Web服务器也有许多模块例如目录存取文件等允许各种各样的Apache配置信息(例如目录存取文件)使用MySQL,应用程序接口简单、一致并且相对完整。另外、多平台ODBC驱动程序可自由获得。3.4 本系统采用的方案根据需求分析,综合比较多种方案,最后决定采用B/S模式,以JSPServlet+JavaBean模式为技术核心,以MySQL作为后台数据库来设计该系统。JSP、Servlet负责浏览器表现层的实现;JSP实现查询、数据翻页显示等简单的逻辑操作;Servlet实现数据的添加、删除、修改等复杂的逻辑操作;JavaBean负责数据库操作、Web页面中文显示等可重用的操作的实现。研究生系统开发模式数据传递关系如图3.1所示:图3.1 研究生系统开发模式数据传递关系3.5 软件安装与配置1.安装jdk-1.4.2,x:jdk1.4.2(x是驱动器名) CLASSPATH:.;x:jdk1.4.2lib tool.jar JAVA_HOME:x:jdk1.4.2 PATH:x:jdk1.4.2bin2.安装tomcat5.0,x:tomcat5.0(x是驱动器名)win9x在autoexec.bat里面用set语句来设定环境变量,如:setTOMCAT_HOME=x:tomcatwinnt/win2000选择“我的电脑”,右键点出菜单,选择属性,弹出对话框系统特性,选择高级,然后点按钮环境变量,即可以编辑系统的环境变量。TOMCAT_HOME值:x:tomcat3.测试tomcat5.0运行x:tombatbinstartup.bat,在浏览器中键入http:/localhost:8080/,如果看到图3.2,说明配置成功。图3.2 Tomcat正常运行界面4. 安装Mysql安装mysql-5.0.1的免安装版。在命令行中进入到”C:mysqlbin”目录下,输入“mysqld-nt install”,在控制面板的服务里面启动mysql服务即可。第四章 研究生管理信息系统数据库设计4.1 数据库简述数据库是整个管理系统的基础,正确地设计数据库对整个系统的建立和系统性能有很大的影响,数据库设计主要依据系统分析的结果。数据库设计中数据的设计是管理系统的设计核心内容,数据的设计不能独立于系统的开发过程,应与功能设计紧密结合起来。针对数据的设计与具体功能的设计的脱离有两种情况:一是“数据的设计滞后于功能的设计”,其二是“功能的设计滞后于数据的设计”。这两种设计思想都存在着一些弊病,妨碍最终正确设计结果的生成。在管理信息系统的设计工作中,人们达成了一种共识,即:管理信息系统的设计是一项庞大的工程,属于软件工程范畴,其中数据设计是系统开发和建设的重要组成部分。但是,人们越来越注意到:传统的软件工程忽视对应用中数据语义的分析和抽象,它着重于应用处理过程的特性,即着重于对功能的设计,只要有可能就尽量推迟数据结构设计的决策。早期的数据库设计致力于数据模型和建模方法的研究,着重结构特性(数据)的设计,对行为特性(功能)的设计几乎没有提供指导,结构设计与行为设计是分离的。这种设计思想实质上是数据设计与功能设计分离的体现之一,即“数据的设计滞后于功能的设计”。数据设计与功能设计分离的体现之二就是“功能的设计滞后于数据的设计”。也就是说,所设计的针对某一主题的数据库,如研究生基本情况数据库,能够适用于几乎所有的对应于这一主题的具体应用,即无论是什么规模的用户,无论是怎样的应用环境,也无论具体有什么特殊的要求,希望所设计的这一主题的数据库均可以没有任何障碍的加以使用。或者说,如果数据和功能两者能互相独立、互不干扰地分别规划和设计,那么数据就会变得更有意义。但是,随着管理信息系统理论、数据库技术及软件工程的发展,人们越来越多地认识到:在管理信息系统的分析与设计过程中,数据库的设计应该同应用系统的功能设计紧密结合,即结构特性设计与行为特性设计相结合。单纯从数据库设计的定义就可以看到这一点:所谓数据库设计,笼统地讲,是研制数据库及其应用系统的技术。由此可见,在数据库设计中,包含了数据和功能应用两方面的内容。按照现在比较公认的意见,数据库设计是指:对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。也就是说,数据库设计结果中的数据,归根结底来自于特定的具体的功能应用环境。同样功能的设计当然也不能离开数据的支持,在进行某个具体功能的设计时需要同时考虑该功能所要使用和与其相关的数据的设计,这一点是显而易见的。4.2 数据库设计根据模块划分,主要建立了6个数据表:1.教学任务管理模块授课信息表(m_teachinfo)见表4.1:字段名称英文类型长度允许空课程名cnamevarchar50授课代码TeachNovarchar10教师代码Tnovarchar15教师姓名Tnamevarchar20课程代码Cnovarchar15上课地点TeachAddvarchar20授课讲次TeachJCint11教学班号ClassNovarchar10上课总人数TotleNoint10理论学时TheoryHourint11实践学时PracticeHourint11课程性质CourseTypevarchar10上课类型StudyTypevarchar10考核性质TestTypevarchar10起始周StartWeekint5结束周EndWeekint5教学计划TeachPlanvarchar50类型Typevarchar10实习学时ShiXiint11设计学时SheJiint11表4.1 授课信息表(m_teachinfo)2.个人资料管理模块 研究生个人资料表(m_studentinfo)见表4.2:字段名称英文类型长度允许空学号Snovarchar15学号SIdvarchar20学生姓名Snamevarchar10曾用名FormerNamevarchar10性别Ssexvarchar6准考证号ZKIdvarchar16出生日期Sbirthdate0民族Snationvarchar10身高Sheightfloat0体重Sweightfloat0血型Sbloodtypevarchar6个人特长OwnFeaturevarchar50政治面貌PolicalFigurevarchar20籍贯NativeProvincevarchar20导师姓名Assistantvarchar16学籍状态StudyStatuvarchar20毕业学校Gschoolvarchar30寝室号DormNovarchar10联系电话ConnectTelvarchar20电子信箱Semailvarchar20父亲姓名FatherNamevarchar20母亲姓名MotherNamevarchar20家庭电话HomeTelvarchar20家庭地址HomeAddressvarchar50邮政编码HomeCodevarchar10银行卡号CardNovarchar20备注Remarkvarchar50是否毕业SFbiyetinyint1专业Majorvarchar20研究方向M_directionvarchar50表4.2 研究生个人资料表(m_studentinfo)3.成绩管理模块研究生成绩信息表(m_student_marks)见表4.3字段名称英文类型长度允许空学生姓名Snamevarchar20学号Snovarchar20课程代码Cnamevarchar30分数Markfloat5学期Termvarchar10教师姓名Tnamevarchar20学分xuefenint12表4.3 研究生成绩信息表(m_student_marks)4.导师信息管理模块导师信息表(daoshiinfo)见表4.4:字段名称英文类型长度允许空导师代码DaoNoint20导师姓名Daonamevarchar20毕业时间Graduatetimevarchar30学位Xueweivarchar15学历Xuelivarchar15毕业院校Biyeyuanxiaovarchar30所学专业Suoxuezhuanyevarchar30担任职务Dutyvarchar20所在部门Departmentvarchar20职称评定时间Vzhichentimevarchar30职称Zhichenvarchar20所在教研室Suozaijiaoyanshivarchar20毕业论文Biyelunwenvarchar20表4.4 导师信息表(daoshiinfo)5.权限管理模块用户角色表(user_roles)见表4.5字段名称英文类型长度允许空用户名Unamevarchar15用户角色Urolevarchar30表4.5 用户角色表(user_roles)用户表(users)见表4.6字段名称英文类型长度允许空用户名Unamevarchar15用户密码Upassvarchar15表4.6 用户表(users)6.个人密码修改模块 用户表(users)见表4.7字段名称英文类型长度允许空用户名Unamevarchar15用户密码Upassvarchar15 表4.7 用户表(users)数据库中各表间的关系图如图4.1所示:m_studentinfom_student_marksm_teachinfom_cou

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论