基于java的教务排课系统_第1页
基于java的教务排课系统_第2页
基于java的教务排课系统_第3页
基于java的教务排课系统_第4页
基于java的教务排课系统_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

基于JAVA的教务排课系统摘要INTERNET网是目前全球最大的计算机通信网,它遍及全球几乎所有的国家和地区。WWW系统是一个大型的分布式超媒体信息数据库,它极大的推动了INTERNET的发展,已经成为INTERNET中最流行、最主要的信息服务方式。WWW技术之所以能在全球普及,一个重要的原因就是它与数据库管理系统相互融合,成为一个处理和共享信息的强大工具。本论文主要包括教务排课系统方案分析与网络规划,本系统是一个典型的信息管理系统MIS,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致、完整和数据安全的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统可以使学生更方便的选排课。实现全校学生选课在线查询。还可以对新来的学生信息进行信息录入。由于学生上课情况复杂,可以实现信息修改,及时调整学生的基本情况。关键词选排课;系统设计;信息管理THECOURSESARRANGINGSYSTEMBASEDONJAVAABSTRACTINTERNETNETWORKISCURRENTLYTHEWORLDSLARGESTCOMPUTERNETWORK,ITALMOSTALLTHECOUNTRIESANDREGIONSWORLDWIDEWWWSYSTEMISALARGEDISTRIBUTEDHYPERMEDIAINFORMATIONDATABASE,ITGREATLYPROMOTEDTHEDEVELOPMENTOFTHEINTERNET,THEINTERNETHASBECOMETHEMOSTPOPULAR,THEMAINWAYOFINFORMATIONSERVICEWWWTECHNOLOGYCANSPREADINTHEWHOLEWORLD,ONEIMPORTANTREASONISTHATITFUSIONANDDATABASEMANAGEMENTSYSTEMS,AHANDLEANDAPOWERFULTOOLFORSHARINGINFORMATIONTHISTHESISMAINLYINCLUDESCOURSESARRANGINGSYSTEMANALYSISANDNETWORKPLANNING,THISSYSTEMISATYPICALMANAGEMENTINFORMATIONSYSTEMMIS,ITSDEVELOPMENTMAINLYINCLUDESTHEESTABLISHMENTANDMAINTENANCEOFDATABASEANDFRONTENDAPPLICATIONDEVELOPMENTTWOASPECTSFORTHEFORMERREQUIREMENTTOESTABLISHDATACONSISTENT,COMPLETEANDDATASECURITYFORTHELATTERREQUIRESTHEAPPLICATIONPROGRAMFUNCTIONCOMPLETE,EASYTOUSE,ETCTHISSYSTEMMAKESMORECONVENIENTFORSTUDENTSTOCHOOSETHECOURSEARRANGEMENTREALIZETHEWHOLESCHOOLSTUDENTSREGISTERONLINEQUERYCANALSOBEINFORMATIONRECORDEDONTHENEWSTUDENTINFORMATIONBECAUSETHESTUDENTCLASSISCOMPLICATED,CANREALIZETHEINFORMATIONMODIFY,ADJUSTTHESTUDENTSBASICSITUATIONKEYWORDSCHOOSESTHECLASS;ARRANGESTHECLASS;SYSTEMDESIGN目录摘要IABSTRACTII第1章引言111课题研究的目的112课题研究的意义113课题的可行性分析2131课题调研2132可行性分析2第2章相关技术介绍321JSP编程语言3211JSP优点322SQLSERVER2000数据库423B/S模式与C/S模式的比较分析424JDBC525数据库系统设计526MVC模式6第3章应用系统开发工具931对软件和硬件的要求932运行需求933其他需求934数据库应用系统开发简介935教务排课系统1036可行性研究10361经济可行性10362技术可行性10363运行可行性11364时间可行性11365法律可行性11第4章系统分析1241系统设计概述1242系统简要分析1243应用需求分析1444业务流分析1545数据流分析1546系统数据模型设计16461数据表17第5章详细设计1851学生登录1852课程预览1953选课2154退课2255密码修改2456管理员登录2557课程管理2758信息维护2959退出系统30第6章系统测试3161系统测试的重要性3162测试的目的3163测试的步骤3264测试的主要内容3265测试实例的研究与选择3366测试环境与测试条件3367系统运行情况3368系统评价33结论35参考文献36致谢37外文原文38中文翻译46第1章引言数据库是从60年代初发展起来的计算机技术。经过四十来年的发展,数据库技术己经趋于成熟。WEB数据库在新的INTERNET环境中发生了很大的变化。就数据应用而言呈现出多样化的空间,如数字图书馆、电子出版物、电子商务、远程教育系统等的出现,给WEB数据库技术提出了更多、更高的要求。同时,随着国内高校校园网的建设,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作用。例如,我国许多高校的网上招生系统,学校的各种管理信息系统,学校选排课系统,还有一些医学院校开发出的网上诊所、远程诊断系统等等,都是基于校园网的应用系统。国外的教学科研软件与国内相比开发的早而且比较成熟。早在七十年代末,美国就建成了NSFNET国家科学基金网,其课题的申报及课题的进展情况汇报都在网上进行。其网上教学教务管理系统也十分完善,世界各地的学生可以坐在家里通过互联网完成入学报名、选排课、考试、毕业论文、取得学位这一学习生活的全过程。目前,国际上已具规模的远程教育学校就有数百所之多,网上教育正在各地发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于INTERNET的校园网的应用已深入到校园内的各个方面。在高等学校的教务管理工作中,课程表的编排是一项十分复杂、棘手的工作。在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾,例如两位教师不能同一时间在同一班级上课、一位教师不能在同一时间上两门课等等。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。我国不少高校都实行了学分制,它的核心是允许学生自由选排课,即把学习的自主权交给学生。在这里,学生选排课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选排课,即能实时地对大量选排课数据进行检验和统计,十分方便地输出选排课结果,同时也避免了人工处理时容易产生的错误。从系统开发的复杂程度来看,计算机辅助排课与选排课是高校教务系统中的两个关键子系统,目前不少教务系统尚未很好地解决排课与选排课问题。本文主要对高校教务管理系统中计算机课表编排与选排课子系统的基本功能、设计思想、需求分析以及实现技术进行探讨。现在,我们已经进入到INTERNET时代了,选课系统自然也要随着更新。大学中,公选排课较多,学生可根据自己的专业及兴趣选择公选课程进行学习,本系统将从教学部门的要求出发,实现公选课的选择、查询与统计。11课题研究的目的1掌握采用INTERNET的TCP/IP协议,以B/S方式,JSP编程技术,多媒体技术。2掌握一种多任务多用户操作系统3JSP的动态网页和SQLSERVER大型的数据库。4学会使用MYECLIPSE开发工具。12课题研究的意义教务排课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以教务排课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对选排课信息进行管理,有着手工管理所无法比拟的优点例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套软件成为很有必要的事情。本文中所做的主要工作如下1介绍了个性化页面的背景及WIN2000SERVERIISJSP系统的一般原理;2阐述整个个性化页面生成系统的系统结构及工作原理;分析了系统实现中的特殊性、难点和重点。3设计实现用户管理、课程管理、选排课信息录入管理、新生信息录入管理、课程的浏览和查找、学生查找等JSP页面。4建立完整的网上选排课,进行测试并分析结果。13课题的可行性分析131课题调研1与实践活动和相关的文件和资料由教师提供。2本课题要求学生有熟练的JSP开发能力,有较强的自学能力以及一定的关系数据库理论开发功底。3具有对复杂表进行处理的能力。4具体问题再做详细调查研究并与指导老师面谈。132可行性分析1技术可行性本系统对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件,数据库使用SQLSERVER2000中提供的数据库桌面工具ODBC。2经济可行性由于本系统是为学生选排课管理使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的开发成本。在经济上完全可行。3操作可行性界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。第2章相关技术介绍21JSP编程语言JSPJAVASERVERPAGES是由SUNMICROSYSTEMS公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件HTM,HTML中插入JAVA程序段SCRIPTLET和JSP标记TAG,从而形成JSP文件JSP。用JSP开发的WEB应用是跨平台的,即能在LINUX下运行,也能在其他操作系统上运行。JSP技术使用JAVA编程语言编写类XML的TAGS和SCRIPTLETS,来封装产生动态网页的处理逻辑。网页还能通过TAGS和SCRIPTLETS访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于WEB的应用程序的开发变得迅速和容易。WEB服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的JAVA程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JAVASERVLET一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。211JSP优点JSP秉承了J2EE高贵的血统,却又带着平易近人的个性。JSP本质上是一个JAVA程序,具备JAVA语言一切无与伦比的优势。相比依赖于VBSCRIPT代码的ASP,以及依赖于PERL语言的PHP等其他WEB编程语言,JSP有着严格的JAVA语法支持,可以和JAVABEAN无缝整合。ASP采用了解析执行的机制,而JSP则是先编译后执行。因此,在第一次访问时JSP比ASP要慢,但是JSP的执行则比每次都解析执行的ASP快若干个数量级。微软随后推出了ASPNET,号称提供了丰富的面向对象类库,引入中间语言的概念来支持多种语言,完整地集成了XML及WEBSERVICE的支持,利用代码托管机制避免危害服务器,并期盼以此代替ASP。事实上ASPNET的框架设计与J2EE框架十分类似,虽然弥补了ASP之前的缺陷,但是,其对于WINDOWS平台的依赖性以及NET本身的封闭性却依然存在。尽管现在有MONO计划将所有的开发转移到LINUX,但是由于各种原因,MONO有着众多的制肘,并不被业界看好。当然,对于WINDOWS环境下的中小型应用程序,ASPNET确实是不错的选择。JSP是线程高度并行的,可以充分利用硬件资源。另外,JAVA语言与平台无关,开发者可以将JSP部署在几乎任何操作系统上,UNIX系统可以为JSP提供稳定可靠的安全运行环境;利用集群技术还可以把多台主机联合起来服务于JSP应用程序。因此,JSP对于高可靠性、高性能要求的企业级应用系统有较强的吸引力。从开发者的角度考虑,JSP是开发WEB应用程序的首选。JSP支持JAVABEAN组件,也就获得了众多JAVA厂商的有力支持,开发者可以利用JAVABEAN来完成所有JAVA能实现的功能,如数据库连接池、图形绘制、文件IO操作、XML解析、WEBSERVICE调用与发布等。JAVA的开放性也使系统框架如雨后春笋般涌现,STRUTS,WEBWORK,TAPSTRY,VELOCITY,HIBERNATE等开源框架为WEB应用开发者简化了开发流程,提高了代码质量,从而降低了学习门槛和开发成本。JSP遵循J2EE规范所采用的分层结构也使得代码容易组织维护,各个独立的层次分别针对特定的编程领域,在某个领域发生变化的时候,只需要在对应层次进行针对性的修改,而不会影响到其他层次的代码。而相对于SERVLET这种JAVA类,JSP又有着特定的优势。从前面的例子可以看出,要完成一个简单JSP页面具有的功能,需要编写大量的SERVLET代码,而且,从代码上根本看不出来生成的HTML文档结构。另外,JSP中双引号等特殊字符,在SERVLET中都需要进行转义处理,又进一步降低了程序的可读性。SERVLET不能有效地利用原型页面。事实上,在JSP中,还可以使用标签等特性,进一步将JSP中的JAVA代码导致的不利因素削弱。总之,使用JSP可以降低开发门槛,提高程序可读性,开发出高性能的跨平台企业级软件。所以在线汽车销售网站采用了JSP技术。22SQLSERVER2000数据库SQLSERVER是由MICROSOFT开发和推广的关系数据库管理系统(DBMS),它最初是由MICROSOFT、SYBASE和ASHTONTATE三家公司共同开发的,并于1988年推出了第一个OS/2版本。SQLSERVER近年来不断更新版本,1996年,MICROSOFT推出了SQLSERVER65版本;1998年,SQLSERVER70版本和用户见面;SQLSERVER2000是MICROSOFT公司于2000年推出的最新版本。SQLSERVER特点1真正的客户机/服务器体系结构。2图形化用户界面,使系统管理和数据库管理更加直观、简单。3丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。4SQLSERVER与WINDOWSNT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQLSERVER也可以很好地与MICROSOFTBACKOFFICE产品集成。5具有很好的伸缩性,可跨越从运行WINDOWS95/98的膝上型电脑到运行WINDOWS2000的大型多处理器等多种平台使用。6对WEB技术的支持,使用户能够很容易地将数据库中的数据发布到WEB页面上。7SQLSERVER提供数据仓库功能,这个功能只在ORACLE和其他更昂贵的DBMS中才有。23B/S模式与C/S模式的比较分析1CLIENT/SERVER是建立在局域网的基础上的,BROWSER/SERVER是建立在广域网的基础上的。(1)硬件环境不同C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。B/S建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。(2)对安全要求不同C/S一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜,可以通过B/S发布部分可公开信息。B/S建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群。(3)对程序架构不同C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。比C/S有更高的要求,B/S结构的程序架构是发展的趋势,从MS的NET系列的BIZTALK2000EXCHANGE2000等,全面支持网络的构件搭建的系统。SUN和IBM推的JAVABEAN构件技术等,使B/S更加成熟。(4)软件重用不同C/S程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。B/S对的多重结构,要求构件相对独立的功能。能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。(5)系统维护不同系统维护是软件生存周期中,开销大,相当重要C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级难,可能是再做一个全新的系统。B/S构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。(6)处理问题不同C/S程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。B/S建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的,与操作系统平台关系最小。(7)用户接口不同C/S多是建立在WINDOW平台上,表现方法有限,对程序员普遍要求较高。B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本。(8)信息流不同C/S程序一般是典型的中央集权的机械式处理,交互性相对低。B/S信息流向可变化,BB、BC、BG等信息流向的变化,更象交易中心。24JDBC数据库连接对系统来说是最为重要的部分,JAVA中连接数据库的技术是JDBCJAVADATABASECONNECTIVITY)。很多数据库系统带有JDBC驱动程序,JAVA程序就是通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。JDBC大致被分为三个部分,即JDBCAPI,JDBC驱动程序管理器和JDBC驱动程序。JDBCAPI通过JAVASQL包来提供。在JDBCAPI上只设计为利用数据库而提供的类的接口,而这个接口是由提供JDBC驱动的软件商来实际完成的。JDBC驱动管理器的作用是在JDBC运行结构上,提供最基础的指引功能。即当一个JDBCAPI程序进行数据库调用时,它会选择一个正确的JDBC驱动程序进行连接。JDBC驱动的作用是当JDBCAPI制作的程序进行数据调用时,实际连接数据库并进行相应的处理。JDBC驱动提供JDBCAPI的接口类。25数据库系统设计(1)在根目录XK下建立一个MSG_DATA文件夹用于存放MESSAGEDB数据库文件。(2)在MESSAGEDB数据库文件下建立ADMIN、CLASSVIEW、PERSON、STUNUM四个数据表,内部具体设置如下ADMIN表ADMIN、ADMIN_PASS分别为超级用户名和超级用户密码,验证管理员用。PERSON表XUEHAO、PASSWD1、PASSWD2、NAMEADDRESS等,分别存放学号、密码1、密码2、姓名地址信息等,主要存储个人注册信息和个人的选排课信息。STUNUM表XUEHAO2存储管理员用户维护的学号,以便提供个人普通用户在注册的学号验证。CLASSVIEW表CLA_NAME_NUM、CLA_NAME_CN、CLA_TERM_NUM、CLA_TERM_NUM、CLA_TEACHER_NAMEID1等,分别存放课程编号、课程名称、学年年级、授课老师辅助编号1等信息,主要存储管理员维护的课程信息,其中辅助编号ID1是用于标识正式选排课信息和空课信息,其中1表示正式课程信息,0表示空课信息,在程序中使用WHEREID10来删选需要显示的选排课信息。信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。数据库系统设计数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照数据库提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。为了更好地组织数据和设计出实际应用数据库,应该注意如下问题规范化地重组数据结构对数据进行规范化表达,这在后面将会具体讨论。关系数据结构的建立在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。建立关系数据结构涉及三方面内容确定关联的关键指标项并建立关联表;确定单一的父系记录结构;建立整个数据库的关系结构。定义安全保密性的方法一般有如下几种A原则上所有文件都定义为4级,个别优先级特别高的办公室终端或微机的入网账号可定义高于4级的级别,反之则定义为低于4的级别。B统计文件表和数据录入文件一般只对本工作站定义为只写方式,对其它工作站则定义为只读方式。26MVC模式为了满足系统对先进性、安全性、跨平台性、可扩展性、可移植性、分布式等方面的要求,系统总体架构设计采用先进的基于JAVA的B/S的三层体系结构。MVC是三个单词的缩写,分别为模型MODEL,视图VIEW和控制CONTROLLER9。MVC模式的目的就是实现WEB系统的职能分工。MODEL层实现系统中的业务逻辑,通常可以用JAVABEAN或EJB来实现。VIEW层用于与用户的交互,通常用JSP来实现。CONTROLLER层是MODEL与VIEW之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。WEB浏览技术已经广泛地应用于INTERNET,并被广大用户接受和使用。WEB技术是随HTTP和HTML一起出现的。WEB服务器利用HTTP传递HTML文件,WEB浏览器使用HTTP检索HTML文件。WEB服务器一旦检索到信息,WEB浏览器就会以静态和交互如文本、图像方式显示各种对象。在电子商务业务进行过程中,需要在各种贸易角色之间浏览和交换各种信息,此时就要使用WEB浏览技术。这种模型使系统结构更加清楚,分工更加明确,有利于整个系统后期的维护和升级。MVCMODELVIEWCONTROLLER模型MODEL视图VIEW控制器CONTROLLERMVC本来是存在于DESKTOP程序中的,M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型视图控制器MVC是XEROXPARC在八十年代为编程语言SMALLTALK80发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐为ORACLE旗下SUN公司JAVAEE平台的设计模式,并且受到越来越多的使用COLDFUSION和PHP的开发者的欢迎。模型视图控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。三层体系结构由浏览器、WEB服务器和数据库组成,并结合HTML语言、JSP、JAVASCRIPT脚本语言、AJAX、ODBC等技术,后台的数据库采用微软的SQLSERVER2005,系统一般的MVC模型如图11所示。WEB服务器/应用程序服务器浏览器浏览器浏览器INTERNET数据库服务器图21系统MVC结构图如图21可知,用户界面层是用户和整个系统的接口,客户端只需安装通用的浏览器即可建立与本系统的连接。业务逻辑层负责处理用户输入的信息,或将这些信息发送给数据库层进行保存,或调用数据库层中的函数再次读出这些数据。数据访问层是整个分层体系的最底层,它主要用来实现与数据库的交互,即完成查询、插入、删除和修改数据库中数据的功能MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件模型、视图、控制器。它们各自处理自己的任务。分层概念视图,模型,控制器。视图是用户看到并与之交互的界面。对老式的WEB应用程序来说,视图就是由HTML元素组成的界面,在新式的WEB应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括MACROMEDIAFLASH和象XHTML,XML/XSL,WML等一些标识语言和WEBSERVICES。如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBS和COLDFUSIONCOMPONENTS这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。MVC模型还可以实现软件工程的高内聚,低耦合的终极目标。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击WEB页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求自己本身并不参与业务逻辑处理,然后再确定用哪个视图来显示返回的数据。MVC的优点1低耦合性2高重用性和可适用性3较低的生命周期成本4快速的部署5可维护性6有利于软件工程化管理第3章应用系统开发工具31对软件和硬件的要求服务器硬件处理器INTEL酷睿2内存256M或更大硬盘20G或更大软件MICROSOFTWINDOWSXPSQLSERVER2000MICROSOFTIIS50或更高版本MICROSOFTOFFICE2003客户机硬件无特殊要求,只要能上连接互联网即可软件MICROSOFTWINDOWSXPMICROSOFTIE50或更高版本系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。本系统运行环境为单环境,在运算时对系统整体性能要求过高,要求软件系统环境IIS50SQLSDK硬件系统环境C600、64MB(RAM)、500MB(HD)。系统运行时对数据的保密性要求不高对一般的数据不要求进行加密。此外,对其它软件几乎没有依赖性,程序健壮性较好32运行需求硬件条件586CPU、32MRAM、32G硬盘以上的PC机;打印机;局域网。软件条件WINDOWS98以及WINDOWSNT操作系统;服务器。33其他需求本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括了可读性、可修改性、可测试性、等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制的条件下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。34数据库应用系统开发简介在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着WORLDWIDEWEBWWW的猛增及INTERNET技术的迅速发展,使得数据库技术之时成为最热门技术之一。用户数据目前表明,大多数主流数据库管理系统把用户数据表示为关系。现在把关系看作数据表。表的列包含域或属性,表的行包含对应业务环境中的实体的记录。并非所有的关系都同样符合要求,有些关系比其它关系更结构化一些。35教务排课系统当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好选排课信息而设计的。学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选排课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选排课权限、以及选排课代号等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管学校都有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。学校采取手工方式对学生选排课情况进行人工管理,由于信息比较多,选排课信息的管理工作混乱而又复杂;一般选排课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的选排课进行更改就更加困难了。基于这些问题,建立一个教务排课系统,可使选排课管理工作规范化,系统化,程序化,避免选排课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选排课情况。36可行性研究该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术可行性、经济可行性和操作可行等方面进行分析。361经济可行性开发该系统所需的相关资料可以通过已存在的相关系统进行调查采集,所需的其他应用软件、硬件系统也易于获得因此,开发成本较低。而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济的角度来看,该系统可行。362技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。本系统用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面由于目前单机模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。本系统的开发,是典型的MIS开发。采用JSP编程语言,已无技术上的问题。363运行可行性运行可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。当前信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。364时间可行性从时间上看,在两个月的时间里学习相关知识,并开发系统,时间上是有点紧,但是不是不可能实现,通过两个多月的努力功能基本实现。365法律可行性所有技术资料都为合法。开发过程中不存在知识产权问题。未抄袭任何系统,不存在侵犯版权问题。开发过程中未涉及任何法律责任。综上所述,本系统的开发从技术上、从经济上、从法律上都是完全可靠的。第4章系统分析41系统设计概述系统设计是在系统分析的基础上由抽象到具体的过程,同时,还应考虑到系统所实现的内外环境和主客观条件,本着实事求是的态度进行这一阶段的工作。系统设计阶段的主要目的是将系统分析阶段所提出的反映用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理方案。这一阶段的主要任务就是从管理信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的要求,并考虑到经济、技术和运行环境等方面的条件,确定系统的总体结构和系统各组成部分的技术方案,合理选择计算机和通信的软、硬件设备,提出系统的实施计划,确保系统总体目标的实现11。系统设计工作的特点1系统设计阶段,大量工作是技术性的。2允许用户对已提出的信息需求做非原则性的修改或补充。3用户在操作使用和运行环境等方面的具体要求也要在系统设计阶段加以明确并在系统的技术方案中得反映,因此系统设计人员还要同管理环境打交道。4系统设计工作的环境是管理环境和技术环境的结合,是系统设计工作的重要特点也是整个系统成功的一个必不可缺的环节。系统设计原则1阶段开发原则系统框架和数据结构全面设计,具体功能实现分阶段进行。2易用性原则方便上网客户浏览和操作,最大限度地减轻后台管理人员的负担,做到部分业务的自动化处理,提供良好的用户体验。3业务完整性原则对于业务进行中的特殊情况能够做出及时、正确的响应,保证业务数据的完整性,减少数据的误读。4业务规范化原则在系统设计的同时,也为将来的业务流程制定了较为完善的规范,具有较强的实际操作性,也给整个系统带来安全性。5可扩展性原则系统设计要考虑到业务未来发展的需要,要尽可能设计得简明,各个功能模块间的耦合度小,便于系统的扩展。如果存在旧有的数据库系统,则需要充分考虑兼容性,比如说浏览器的兼容。42系统简要分析管理员可以通过超级用户身份登录,对系统进行全面的管理,对新用户的添加,删除,对信息进行管理。管理员可以对老师及同学的帐户进行管理,学生用户进入不同的界面,进行不同的操作。同学可以通过查询本学期所开设课程进行选择。功能模块图如下选课系统用户登录子系统学生选课子系统课程管理子系统学生教师查询课程信息查询课程管理员选课和退课课表查询选课确认进入排课系统图41选课系统功能模块图排课子系统教师信息管理课程信息管理信息维护教室信息管理课程安排排课管理信息维护信息维护课程安排智能排课排课结果信息录入信息录入信息录入图42排课子系统功能模块图43应用需求分析教务排课系统需要满足来自两方面的需求,这三个方面分别是学生、老师、管理员。学生的需求是查询院系的课程、学生选排课情况及学生信息的修改;学生可以直接查看选排课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。一般情况下,学生只应该查询和维护本人的选排课情况和个人信息,若查询和维护其他学生的选排课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。学校工作人员有修改学生选排课的权限,所以需对工作人员登陆本模块进行更多的考虑。在此系统中,学校工作人员可以为学生加入选排课或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对选排课信息、教师信息、总体选排课情况信息的查询和统计、工作人员和管理人员信息查看及维护。学校管理员可以浏览、查询、修改、统计选排课的基本信息;浏览、查询、统计和修改学生选排课的基本信息,浏览、查询、统计学生信息,但不能添加删除和修改学生的信息,这部分功能应该由院系工作人员执行,但是,删除某条学生选排课基本信息记录时,应实现对该学生选排课的级联删除。并且还应具有生成选排课报表,并打印输出的功能。设计不同用户的操作权限和登陆方法对所有用户开放的学生选排课查询和个人部分信息维护查看个人情况信息维护学生个人密码根据选排课情况对数据库进行操作并生成报表根据选排课情况对数据库进行操作并生成报表查询及统计各种信息维选排课信息维护工作人员和管理员信息维护学生信息处理信息的完整性。本系统主要实现学生信息管理、课程信息管理、排课管理、学生选课管理,学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、已选人数、课程性质、开课系。(1)学生信息模块完成学生的登陆,然后根据各位同学所在的系不同,调用相应的选排课模块。其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。(2)教师信息模块完成教师的登陆,然后根据各位教师所在的系不同,教师所教的课程不同,调用所选的课程其中教师登陆模块的功能是验证登录人员确实是本院的教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入主控操作界面。(3)课程信息管理包括必修课程和选修课程,学生必需先登陆才能进行对课程的选排课否则不能进入选排课系统(4)系信息管理中学生必需选重所在的系号和系名才能进行选排课,否则并不能进行选排课44业务流分析学生成绩管理系统的业务流程首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除。所有用户均可以进行信息查询和统计,有权限用户还可以基于已有信息进行奖学金评定,评定结果可以报表打印。45数据流分析学生成绩管理系统的数据流程首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除处理。所有用户均可以进行信息查询和统计,有权限用户还可以基于已有信息进行奖学金的评定处理过程,评定结果可以报表打印46系统数据模型设计学生表课程时间教师表课程班级教室学号开始时间班级号教室号容纳人数人数结束时间课程号课程名姓名教师号姓名教室名课程号年级系别课程名教学周课时排课属于讲授安排课程图43ER图461数据表本系统的数据库采用了大量的数据表表41学生信息表字段数据类型数据长度学号数字6姓名文本10系部文本20班级数字20密码文本10表42课程信息表字段数据类型数据长度课程号数字6课程名文本20教师号数字10学分数字10学时数字10上课时间时间20上课地点文本20课程简介文本50课程状态是/否10第5章详细设计51学生登录首先,点击主页左边的学生选课系统,出现选排课系统画面,接着,选择自己的操作权限,输入正确的用户名和密码,就可登录网上选课系统,并在网上选课开放期间,进行增加或删除课程;在网上选课关闭期间,可预览自己所选课程或查询自己的历史成绩。图51学生登录模块PUBLICCLASSLOGINSERVLETEXTENDSHTTPSERVLETCONSTRUCTOROFTHEOBJECTPUBLICLOGINSERVLETSUPERDESTRUCTIONOFTHESERVLETPUBLICVOIDDESTROYSUPERDESTROY/JUSTPUTS“DESTROY“STRINGINLOG/PUTYOURCODEHEREPUBLICVOIDDOGETHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONSTRINGNAMEREQUESTGETPARAMETER“USERNAME“STRINGPWDREQUESTGETPARAMETER“USERPWD“STRINGADMINREQUESTGETPARAMETER“ADMIN“STRINGXUESHENGREQUESTGETPARAMETER“XUESHENG“STRINGLAOSHIREQUESTGETPARAMETER“LAOSHI“STRINGSTR“LOGINBEANLBNEWLOGINBEANINTFLAGLBLOGINNAME,PWDIFFLAG2|FLAG3IFADMINNULLREQUESTSETATTRIBUTE“ADMIN“,“1“IFXUESHENGNULLREQUESTSETATTRIBUTE“XUESHENG“,“1“IFLAOSHINULLREQUESTSETATTRIBUTE“LAOSHI“,“1“IFFLAG1IFADMINNULLIFXUESHENGNULLIFLAOSHINULLARRAYLISTALLBGETARRAYLSTHTTPSESSIONSESSIONREQUESTGETSESSIONSESSIONSETATTRIBUTE“LOGIN“,ALREQUESTDISPATCHERRDREQUESTGETREQUESTDISPATCHERSTRRDFORWARDREQUEST,RESPONSEPUBLICVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONDOGETREQUEST,RESPONSEINITIALIZATIONOFTHESERVLETTHROWSSERVLETEXCEPTIONIFANERROROCCUREPUBLICVOIDINITTHROWSSERVLETEXCEPTION/PUTYOURCODEHERE52课程预览学生进入网上选课系统,请首先进入课程预览菜单,预览自己的课程表,学生自行选课后,也可进入课程预览菜单,查看选课结果,而且可以自由退课。图52选课系统模块PUBLICCLASSPAIKEJIEGUOSERVLETEXTENDSHTTPSERVLETCONSTRUCTOROFTHEOBJECTPUBLICPAIKEJIEGUOSERVLETSUPERDESTRUCTIONOFTHESERVLETPUBLICVOIDDESTROYSUPERDESTROY/JUSTPUTS“DESTROY“STRINGINLOG/PUTYOURCODEHEREPUBLICVOIDDOGETHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONVALIDATEVNEWVALIDATESTRINGZHUANYEREQUESTGETPARAMETER“ZHUANYE“STRINGNIANJINULLIFREQUESTGETPARAMETER“NIANJI“NULLKECHENGBIA

温馨提示

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

评论

0/150

提交评论