




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i基于Web的学生课程及成绩管理系统摘要随着信息技术的普及和推广,计算机网络已经成为生活和工作必不可少的有力工具。而且近年来高校扩招制度的出台,使得各高校办学规模不断扩大,学生数量不断增加,面对庞大的信息量,对于学校而言,实现办公自动化将大大提高学校管理的工作效率。课程和成绩管理系统对于学校实现办公自动化化将起到重要作用。本设计基于Web的学生课程成绩管理系统的开发与设计将使用当前主流的编程语言Java来开发,用MySQL数据库作为底层数据的存储,在页面的实现中,使用了jsp、javascript、ssh技术,实现出一个功能相对齐全、界面简洁、使用方便、用户体验度相对较高的学生课程和成绩管理系统。该系统为用户提供了一个学生课程和成绩的管理平台,在这里不同权限的用户,拥有不同的操作功能。关键词:课程和成绩管理;Java;MySQL;SSHiiTheManagementSystemofStudentCurriculumandPerformanceBasedonWebAbstractWiththepopularizationandpromotionofinformationtechnology,computernetworkhasbecomeapowerfultoolforessentialforlifeandwork.Andthesystemofuniversityenrollmentexpansioninrecentyears,makestheexpandingthescaleofhighereducation,studentNumberscontinuetoincrease,inthefaceofthehugeamountofinformation,Forschools,officeautomationwillgreatlyimprovetheefficiencyofschoolmanagement.Curriculumandperformancemanagementsystemforschoolstoachieveofficeautomationwillplayanimportantrole.ThedesignofthecoursegradestudentmanagementsystembasedonWebdevelopmentanddesignwillusethecurrentmainstreamoftheJavaprogramminglanguagetodevelop,usingMySQLdatabaseastheunderlyingdatastore,intherealizationofthepage,usingthetechnologyofJSP,javascript,SSH,realizedafunctionrelativelycomplete,theinterfaceissimpleandeasytouse,theuserexperiencedegreerelativelyhighstudentcurriculumandperformancemanagementsystem.Thesystemprovidesuserswithastudentcurriculumandperformancemanagementplatform,differentuserpermissions,herehasadifferentoperatingfunction.Keywords:Curriculumandperformancemanagement;Java;MySQL;SSH目录摘要.iAbstract.ii1绪论.11.1系统概述.11.2系统背景及其意义.12相关技术及软件介绍.32.1Tomcat服务器.32.2MySQL数据库.32.3Eclipse.42.4软件开发工具简介.52.4.1Java技术.52.4.2JSP技术.62.4.3JavaScript.62.4.4SSH框架.73系统可行性分析.94系统需求分析.105系统总体设计.136数据库设计.166.1数据库概念结构设计.166.2数据库逻辑结构设计.176.3数据库的物理设计.187系统实现.217.1系统登录页.217.2不同权限的用户登录界面.237.3管理员功能页面.277.3.1添加课程界面.277.3.2添加老师界面.317.3.3成绩管理界面.337.3.4添加学生界面.337.3.5查询功能.357.4教师功能界面.377.4.1添加成绩界面.377.4.2公告管理界面.378系统测试.38结论.39参考文献.40致谢.41外文原文.42中文翻译.5101绪论1.1系统概述进入2l世纪,我国教育面临一系列的挑战。这些挑战主要来自于科学技术的迅猛发展、因人口增长而引起的教育需求的增长、国际竞争和各种社会问题等方面。传统的教育越来越不适应社会的发展,教育的根本出路就在于改革。而教育改革的重要途径之一就是教育信息化(eEducation),即在教育领域全面深入地运用现代信息技术促进教育改革和教育发展。教育管理信息系统(EMIS)就是教育信息化的一个重要组成部分,也是教育信息化的基础。在推进教育信息化的过程中,管理信息系统建设要先行一步,把管理信息化的基础打好。只有管理信息系统的根深,才有教育信息化这棵大树的叶茂。教育管理信息系统的建设已迫在眉睫。本系统实现的是对学生课程及成绩的管理系统,它是整个教务管理系统中的一个子系统。主要用户是学生、教师和管理员,管理员具有所有权限,学生和教师通过系统完成不同的工作。系统需要实现的功能总体来说有三个部分,分别如下:1.管理员对应功能对于管理员这个角色来说,可进行学生信息管理,老师信息管理,课程信息管理,成绩管理,信息查询,新闻管理、成绩统计等工作。2.学生对应功能对于学生这个角色来说,可以查询自己所选修课程的成绩。3.教师对应功能对于教师这个角色录入学生成绩,管理学生信息。该系统的开发过程为:1.学生课程及成绩管理系统的需求分析;2.学生课程及成绩管理系统的系统分析;3.学生课程及成绩管理系统的功能模块划分;4.学生课程及成绩管理系统的数据库设计;5.学生课程及成绩管理系统的界面设计;6.学生课程及成绩管理系统的数据库连接、功能模块设计及代码实现。1.2系统背景及其意义一直以来,大多谁学校采用手工、半手工管理学生成绩并打电话人工通知成绩的方式,这种管理方式存在许多缺点,如不方便、效率低、容易出错、保密性差等,而且时间一长,还会产生大量的数据,给查找、更新和维护都带来诸多不便(传统的纸质保存方式会占用大量空间)。学生课程及成绩管理是高校人才培养计划的重要组成部分,是实现人才培养目标,培养学生科研能力与创新思维、检验学生综合素质与实践能力的重要手段,是一项综合性实践教学环节,也是一个非常繁琐与复杂的一项工作。随着学校规模不断扩大,学生数量急剧增加,有关学生的学习成绩信息量也成倍增长。如此庞大的信息量,迫切需要一个学生课程及成绩管理系统。通过这样的系统,可以做到学习成绩的规范管理、科学统计和方便快速查询等,从而减少管理方面的工作压力。即开发学生课程及成绩管理系统对学生成绩档案进行网上数字化管理,既可比较系统规范地对学生成绩信息进行管理,方便用户的使用,又可提高工作效率与准确率,还可提高保密性和缩小开支。1高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。而且随着我国高等教育规模不断扩大,越来越多的学生能够进入高校中深造,随着高校教育质量的提高,高校教学改革也不断深入,这给高校的教务管理工作带来了很大的压力和难度。如何利用软件技术为高校课程及成绩管理工作建立一套高效安全、功能强大的网络管理平台显得尤为重要。Internet和Web的迅猛发展使数据库技术也开始与Web产生了紧密的联系,一种新兴的技术Web数据库技术出现了,并且开始在数据库的应用中发挥着越来越重要的作用。高校校园网的迅速普及,使课程和成绩管理软件能充分依托校园网,实现教务信息的集中管理、分散操作、信息共享,使传统的教务管理朝数字化、无纸化、智能化、综合化的方向发展。基于Web的课程及成绩管理系统利用JSP技术与数据库想结合实现,具有数据输入、查询修改等功能,应用该系统可大大提高工作效率,并为进一步完善计算机教务管理系统和全校信息系统打下良好的基础。学生课程及成绩管理是非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管理。对于一个学校而言,更应该运用一些本地资源,提高管理的力度,对学生负责,对国家负责。但是同发达国家相比,我国的教育行业的信息技术的应用程度还很低,只有在大城市中发展较早、规模较大的院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些新兴的、规模较小的教育机构还没有全部具备这种功能。因此可见,随着我国教育的迅速发展,信息技术在其上的应用会更加地广泛和深入。本系统的研究意义主要是改变以往的成绩管理模式,改人工手动管理为计算机网络化管理。使学校在处理学生成绩的问题上,变得更加方便和快捷。同时可以降低了人工管理的错误率,提高了数据的安全性。随着教育的发展、高校规模的扩大、学生人数的增加,对学生各种信息的汇总、统计、分析等管理工作面临着很多困难。如果高校对学生各种信息的管理通过手工整理等方式来处理完成的,那么在这个工作过程中奖花费大量的人力和时间,而且查询各种信息也不方便不准确,影响了各级领导和学生管理部门对学生信息的及时掌握和分析。学生课程和成绩管理系统可以减轻学校教学人员的工作量,加快查询速度,加强管理,还有就是缩小开支,提高工作效率与准确率。学生成绩管理系统的应用也为今天的高校教育在未来市场的竞争力的提高打下坚实的基础。本系统利用网络这个平台,充分利用了网络的快捷性,提高教育的时效性,使学生随时随地查询自己的学习成绩,达到促进学生自主管理的目的,提高教师对学生管理工作的效率,让老师及时掌握学生学习上的动态。而且通过本课题的研究,能够充分了解网络数据库的相关知识,培养网络软件开发的能力,提高实践操作和知识的综合运用能力。22相关技术及软件介绍2.1Tomcat服务器开发者热爱的服务器Tomcat,其是款免费的开放源代码的Web应用服务器,Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。它属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下常常被使用,是开发和调试JSP程序的首选。并且作为一个开发者,他们可以这样考虑,当在一台服务器上配置好Apache服务后,他们就可利用它响应对HTML页面的访问请求。实际上,Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行它时,它实际上是作为一个与Apache独立的进程单独在运行的。Tomcat服务器很受广大开发者的热爱,因为它扩展性好,其运行时占用的系统资源要小,支持邮件服务与负载平衡等开发应用常用的功能;而且它还在不断的改进和完善中,只要开发者对其有不同的需求,都可以更改使其功能满足开发者的需要。在安装Tomcat之前必须先安装JDK。JDK的全称是JavaDevelopmentKit,是Sun公司免费提供的Java语言的软件开发工具包,其中包含Java虚拟机(JVM)。编写好的Java源程序经过编译可形成Java字节码,只要安装了JDK,就可以利用JVM解释这些字节码文件,从而保证了Java的跨平台性。JRE是JavaRuntimeEnvironment的缩写,是Java运行环境,即Java平台。JDK是基于DOS界面的Java程序集成开发环境,而JRE是Java程序运行的必备平台,即所谓的JVM。安装两套JRE,就是在机器上安装了两个JVM,它们都可以运行Java程序。Java应用程序可以分为两种,一种是JDK目录中的应用程序,另一种是根据各种应用需要开发的一般Java程序。它们执行时分别使用不同的JRE,可以减少搜索时间,利用JRE并行运行的特点来提高程序执行速度,所以安装jdk时默认路径下的的JRE运行JDK目录中的应用程序,而默认jre路径下JRE运行一般Java应用程序。安装tomcat时把Tomcat压缩文件apache-tomcat-6.0.14.zip中的内容解压缩到C:apache-tomcat-6.0.14下,然后增加系统变量的方法增加系统变量。变量名:TOMCAT_HOME;变量值:C:apache-tomcat-6.0.14。然后修改系统变量classpath,添加%TOMCAT_HOME%commonlibservlet-api.jar;同时修改系统变量path,添加%TOMCAT_HOME%bin。要测试Tomcat服务器是否安装成功,首先要启动Tomcat服务器。在Tomcat安装目录C:apache-tomcat-6.0.14下面有一个bin目录,里面有两个文件:startup.bat和shutdown.bat,分别控制Tomcat的启动和关闭。然后在浏览器地址栏中输入http:/localhost:8080,按Enter键访问。2.2MySQL数据库MySQL是一个SQL关系式数据库,由于执行效率与稳定性高、操作简易,所以用户众多。官方文件中这么说:“MySQL是一个真正的多用户、多线程的SQL数据库服务器”。SQL是世界上最流行和标准化的数据库语言,它使得存储、更新和访问信息更容易。另外,MySQL同时提供高度多样性,能够提供很多不同的使用者介面,包括命令行客户端操作,网页浏览器,以及各式各样的程序语言介面,例如3C+,Perl,Java,PHP,以及Python。你可以使用事先包装好的客户端,或者干脆自己写一个合适的应用程序。MySQL可用于Unix,Windows,以及OS/2等平台,因此它可以用在个人电脑或者是服务器上。Navicat是由卓软数码科技有限公司(PremiumSoft)开发的一个直观强大的数据库工具,用于开发和管理MySQL、SQLite、Oracle及PostgreSQL的数据库,它支持Windows、MacOSX及Linux等。Navicat是一款快速、可靠的数据库管理工具,很受大家的欢迎。Navicat专门用来简化数据库管理并且减少管理成本,它旨在满足数据库管理人员、数据库开发人员以及广大中小企业的需要,它有一个很直观的GUI,可以让你安全便捷的创建、组织、访问以及分享信息。对于MySQL来说,Navicat工具是一个强大的数据库管理和开发工具。它可以跟任何版本的MySQL数据库服务器(3.21版或者以上版本)一起工作,并且支持MySQL大多数最新的功能,包括Trigger、StoredProcedure、Function、Event,View和ManageUser等。NavicatLite可以免费下载,但是仅适用于非商业活动。NavicatforMySQL是一套专为MySQL设计的强大数据库管理及开发工具。它可以用于任何版本3.21或以上的MySQL数据库服务器,并支持大部份MySQL最新版本的功能,包括触发器、存储过程、函数、事件、视图、管理用户等。Navicat的功能足以符合专业开发人员的所有需求,但是对MySQL的新手来说又相当容易学习。有了Navicat极完备的图形用户介面(GUI),NavicatforMySQL让你可以简便地以安全且简单的方法创建、组织、访问和共享资讯及进行MySQL的管理。2.3EclipseEclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。它的优势如下:1.Eclipse是真正可扩展并可配置的。Eclipse采用插件机制,犹如一个花瓶,你可以随时向花瓶里面插花,也可以很容易将不再需要的花取出。目前,互联网上免费的、收费的插件遍地开花,插件开发工作在国内外也如火如荼。2.Eclipse支持众多的开发语言而不仅仅是Java。Eclipse只是给开发人员提供了一个能够扩展系统功能的最小核心,基于扩展点的插件体系结构使得Eclipse支持多种语言成为可能。只要安装相应语言的插件,Eclipse就可以支持该种语言的开发。目前,Eclipse已经可以支持C/C+、COBOL、PHP、Perl、Python等多种语言。(尽管Eclipse主要是一个Java开发环境,但其体系结构确保了对其它编程语言的支持)。3.Eclipse提供了对多重平台特性的支持。开发者可以使用他们感觉最舒适、最熟悉的平台,例如Windows、Linux、MacOS等。Eclipse对每个平台都有其单独的图形工具包,这使得应用程序具有接近本地操作系统的外观和更好的性能。基于业界领先的OSGi规范。OSGi规范最早由SunMicrosystems、IBM、爱立信等于1999年推出,其服务平台包括:服务网关、汽车、移动电话、工业自动化、建筑物自动化、PDA网格计算、娱乐(如iPronto)和IDE等。基于OSGi的系统以微内核形式运行,因而能够轻松实现软件业界梦寐以求的可热插拔、动态改变行为、稳定高效的系统。Eclipse从3.1开始,毅然抛弃了其原有的已经获得业界认可的框架,采用OSGi作为其架构。从Eclipse3.2版本开始,Eclipse提供了基于OSGi开发的支持,开发者4可以利用其开发基于OSGi的系统了。4.Eclipse美轮美奂的人机界面受到广泛赞誉。Eclipse提供了全新的SWT/JFaceAPI(而不是AWT/Swing),一改SWT/Swing单调、沉闷的界面风格,使得开发基于本地的具有丰富图形界面的应用程序成为可能,犹如一股春风吹进Java的桌面开发领域,给人耳目一新的感觉。5.Eclipse由业界领先者推出,具有强大的行业力量。Eclipse基金会吸收了大量学术研究机构、商业组织,领导Eclipse的长远规划和发展,并确保Eclipse处于软件工具行业的领先地位。2.4软件开发工具简介常用语言工具:Delphi、PowerBuilder、VB、NetWinforms、Java。Web开发语言:HTML、XML。动态Web语言:JSPServlet、ASPnet、ASP。客户端脚本语言:JavaScript、Jscript、VBScript。目前国内开发Web应用系统主要采用Java和net开发技术。这两项技术都可以建立动态、稳定、性能强大且易于升级和维护的网络应用系统。现代软件开发80以上的程序需要与数据库打交道,所以掌握SQL语言及常用主流数据库平台的操作、配置成为了程序员必备的能力之一。常用主流数据库平台如下:Oracle、DB2、SyBase、MSSQLServer、MySQL、MSAccess。学生课程及成绩管理系统采用Java技术,动态Web语言是JSPServlet;客户端脚本语言是JavaScript;数据库平台是MySQL。2.4.1Java技术在丰富的开发语言种类中,Java是一个非常理想的选择。Java分为三个体系JavaSE(J2SE)(Java2PlatformStandardEdition,java平台标准版),JavaEE(J2EE)(Java2Platform,EnterpriseEdition,java平台企业版),JavaME(J2ME)(Java2PlatformMicroEdition,java平台微型版)。Java与传统程序不同,SunMicrosystems公司在推出Java之际就将其作为一种开放的技术。使得全球的Java公司在开发的关于Java程序都要做到了互相兼容。“Java语言开发要靠大家努力而非个人、企业的力量”是SunMicrosystems的口号之一,并且得到了大多数软件开发公司的认可。这种模式和微软公司所提倡的注重精英的模式和密封式的模式完全不同。SunMicrosystems公司对Java编程语言的官方诠释是:Java编程语言是个简单、面向对象、健壮、解释性、分布式、安全与系统无关、高性能、可移植、多线程和动态的语言。Java编程语言的风格非常的接近C语言、C+语言。Java语言的设计核心是面向对象的编程语言,它继承了C+语言面向对象技术的核心。Java的进步是其没有像C语言那样,容易由于指针引起错误、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在Java1.5之后的版本中,Java又引入了类型安全的枚举、泛型编程(GenericProgramming)、自动装/拆箱和不等长参数等等语言特性。5Java的优势:此开发语言非常适合集体开发,软件工程可以相对做到一定的标准化。由于其本身的极度严格语法的特点,因此Java语言无法写出结构杂乱无章的程序。这样将迫使程序员的软件代码、软件结构的一致性、规范性。这是其很难比拟的优势。Java的劣势:j2ee的架构相对完善,第一版软件虽然可以做满意,但是很不适合互联网模式的持续不断修改。互联网软件工程管理上的不好的地方,不断的修补就会导致软件框架的破坏。2.4.2JSP技术JSP是服务器页面(JavaServerPage,JSP)的缩写,是由SunMicrosystems公司倡导、许多公司参与一起建立的一种技术标准,类似其他技术标准,如ASP和PHP。Servlet是JSP出现之前的主要JavaWeb处理技术。它接受用户请求,在Servlet类中编写所有Java和HTML代码,然后通过输出流把结果页面返回给浏览器。其缺点是:在类中编写HTML代码非常不便,也不利于阅读。使用JSP技术之后,开发Web应用便变得相对简单快捷多了,并且JSP最终要编译成Servlet才能处理用户请求,因此我们说JSP拥有Servlet的所有功能和特性。采用JSP技术开发的项目,通常使用HTML语言来设计和格式化静态页面的内容,而使用JSP标签和Java代码片段来实现动态部分。程序开发人员可以将业务处理代码全部放到JavaBean中,或者把业务处理代码交给Servlet、Struts等其他业务控制层来处理,从而实现业务代码从视图层分离。这样JSP页面只负责显示数据即可,当需要修改业务代码时,不会影响JSP页面的代码。JSP的特点:1一次编写,随处运行JSP是以Java语言作为基础的,它继承YJava语言的特点,主要运行在操作系统的JVM上,能运行JVM的操作系统就能运行JSP。2有统一的技术标准JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种技术标准,获得了大多数厂商的支持。3执行性能高只需将JSP编译一次使之成为Servlet文件,当有相同的客户请求时,JSP服务器将产生一个该Servlet文件的一个线程来响应,而不是重新编译JSP文件,这也就大大提高了Web服务器的响应速度。4自由扩展标签JSP可以让Web开发人员自由扩展JSP标签,Web开发人员还能自定义标签。5开发工具多且功能强大Java已经有许多非常优秀的开发工具,如JBuilde、Eclipse等,开发JSP页面可以借助这些工具,高效的编写JSP代码。由于JSP是以Java语言为基础,运算速度快、性能稳定、安全性好、组件开发方便,所以本系统采用JSP来开发动态网页。2.4.3JavaScriptJavascript是一种解释性的,基于对象的脚本语言,由SunMicrosystems和Netscape开发,是从Netscapes的Livescript发展而来的。所谓脚本语言就是可以和6HTML语言混在一起使用的语言,可以用来在浏览器的客户端进行程序编制,从而控制浏览器等对象操作。HTML是一种标记语言,不是编程语言,标记语言设计的目的是为了给页面元素加上标记,表示页面的这个部分是标题,那个部分是正文文本。编程语言用于作出决定:如果这个条件是真,执行过程X;否则跳过过程X,也许转而Y或Z,HTML语言不能做到这一点,这个功能需要在HTML文件中插入一段小程序来实现,这段小程序叫做脚本,编写脚本的语言称为脚本语言。JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言。使用它的目的是与HTML语言一起实现在一个Web页面中与Web客户进行交互作用。JavaScript可以增强站点的动态性和交互性。如:提供用户交互、动态更改内容和验证数据等。JavaScript是通过嵌入或调入在标准的HTML语言中实现的。JavaScript是一种比较单的编程语言,使用方法是向Web页面的HTML文件增加一个脚本,不需要单独编译解释,当一个支持JavaScript浏览器打开这个页面时,由浏览器对此作处理,是在客户端完成的,不需要和WebServer发生任何数据交换。JavaScript较容易方便,运行快,适用于较简单的应用。2.4.4SSH框架虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts1而言。Struts2与Struts1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的J2EEWeb框架,同时也是一个成熟的基于Web的MVC框架从某种程度上来讲,Struts2没有继承Struts1的血统,而是继承WebWork的血统。或者说,WebWork衍生出了Struts2,而不是Struts1衍生了Struts2.因为Struts2是WebWork的升级,而不是一个全新的框架,因此稳定性、性能等各方面都有很好的保证:而且吸收了Struts1和WebWork两者的优势,因此,是一个非常值得期待的框架。所以strust2框架也是一个基于Web的MVC框架。Struts2可以减少编程人员代码的编写,使代码更加简洁明了,缩短开发时间,增加开发效率.Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。Spring是一种轻量级的容器,spring容器帮我们管理业务逻辑层,里边有很多业务逻辑对象,有对象就有对象的生命周期的管理,包括创建,销毁等。所谓轻量级就是容器给予的业务逻辑对象多少种服务,spring给用户提供的服务完全由用户自己决定,spring想用什么服务自己开启使用。但是重量级的都是只要你用就把所有的服务都给你,不能自己定制。spring容器从来不能独立运行,一定借助于其他容器启动,或者借助web容器启动,或者ejb容器启动。Spring的特点是应用模块之间耦合度小,组件都是可重用的,都是各自打包的。Spring动态解藕,方便开发,面向接口设计,通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Spring进行控制,7避免硬编码所造成的过度程序耦合。有了Spring,用户不必再为单实例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。方便程序的测试TDD(Test-DrivenDevelopment)可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。它降低JavaEEAPI的使用难度Spring对很多难用的JavaEEAPI(如JDBC,JavaMail,远程调用等)提供了一个简单的封装层,通过Spring的简易封装,这些JavaEEAPI的使用难度大为降低。他可以方便集成各种优秀框架Spring不排斥各种优秀的开源框架,相反,Spring可以降低各种框架的使用难度,Spring提供了对各种优秀框架(如Struts,Hibernate、Hessian、Quartz)等的直接支持。通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。对异常的处理方式,所有的都转换成Unchecked的。它不是一个一体化的解决方案。良好的设计,容易扩展,很多可重用的组件。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。Spring提供的Context是灵活配置的,通过注入,将Bean之间的关系关联起来,而不是放在Bean中去实现。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。它基于IoC(InversionofControl,反向控制)和AOP(面向切面)的构架多层j2ee系统的框架,但它不强迫你必须在每一层中必须使用Spring,因为它模块化很好,允许你根据自己的需要选择使用它的某一个模块;它实现了很优雅的MVC,对不同的数据访问技术提供了统一的接口,采用IoC使得可以很容易的实现bean的装配,提供了简洁的AOP并据此实现事物管理。Spring使软件开发质量显著提高,提高了软件的开发效率。与其他架构充分整合,实现一个完美的软件开发平台。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的优点是大部分JDBC中的SQL语句不用写了,只要操纵相应的对象就可以进行存储,修改,加载,删除,提高了我们的生产率。我们用Hibernate,只操作对象,这就使我们的开发更对象化了。Hibernate的移植性很好。最重要的一点是,实现了对象的透明持久化。什么是对象的透明持久化?就是一个类,用Hibernate进行持久化,而它却不继承Hibernate任何的类和实现Hibernate的任何接口,通常,我们就称这个类为POJO。也就是说,Hibernate没有侵入性,也就是轻量级的框架。缺点是批量修改,Hibernate等一些ORM框架都不支持。ORM是对象-关系映射(Object/RelationalMapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的问题的技术。对于数据库的一些特定的功能的时候,就不适合使用Hibernate,例如数据库的优化。83系统可行性分析1.经济可行性现在,计算机的价格已经十分低廉,性能和效率缺有了长足的进步。而本系统的开发,为学校的工作效率带来了一个质的飞跃,主要表现在以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运行可以大大提高学校的工作效率;第四,本系统可以使敏感文档更加安全,等等;所以,本系统在经济上是可行的。2.技术可行性本系统以java语言为开发语言,Eclipse作为开发环境,Eclipse从编写、查错、编译、帮助等等各方面为Java语言贴身定做。可无限扩展的强大插件功能。它开放,自由,免费。除此之外Mysql作为本系统的数据库,MySQL是一个SQL关系式数据库,由于执行效率与稳定性高、操作简易,所以用户众多。MySQL是一个真正的多用户、多线程的SQL数据库服务器。它使得存储、更新和访问信息更容易。本系统主要采用Struts+spring+Hibernate架构,采用Java语言,比较容易实现。所以在技术上也是可行的。3.操作可行性确定软件产品是否能够被最终的用户所接受,用户是否能操作最终的产品:本系统为一个小型的学生课程及成绩管理系统,所耗费资源非常小,学校的电脑无论是软件还是硬件都能够满足条件。而且本系统操作简单,方便使用。所以在操作上也是可行的。综上所述,此系统开发目标已明确,在技术和经济,操作三方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。4.政策可行性国家为进一步加快教育信息化的建设步伐,推动全国教育管理信息化工作向规范化和健康化方向发展,教育部于2002年8月6日正式发布教育管理信息化标准(第一部分:学校管理信息标准)(教发200227号),要求各个部门各个学校执行。这是国家对教育管理信息化的政策保证。随后,中国国家标准化管理委员会发布了国家标准信息技术学习、教育和培训高等学校管理信息标准(GBTxxxx2007),本标准提出了适用于高等学校教育管理信息的标准体系,为高等学校教育管理信息的建设9提供了统一标准和重要指导。4系统需求分析一款实用的软件就是要能够让用户得到很好的体验,本系统开发的目的,就是通过系统开发,实现课程及管理有关工作的计算机化,减少高校在管理学生课程及成绩时的工作量,提高了教学管理的质量和效率。通过对学校的课程及成绩管理,方便了学生对成绩的查询,使教学更加信息化。将学生选择的课程和学生成绩通过网络进行管理,为学生、教师和教务管理人员提供便利。该开发工作需要涉及任课教师、学生、管理员(教务工作人员)三种用户。为了满足方便教学管理这一本质理念,故提出需求包括如下:1.系统需求课程及成绩管理成为学校教学管理中十分重要又相当复杂的管理工作之一,单纯的采用传统的手工处理已经不符合教育和管理的要求,而计算机具有运算速度快,处理能力强等特点,很自然地进入到这一应用领域中。因此为了保证学校的信息流畅,工作高效,有必要设计一个学生课程及成绩管理系统。这不但能使教务人员从复杂的成绩管理中解脱出来,而且对于推动教学的发展也起到非常重要的作用。学校学生课程及成绩管理工作都是采用传统的手工管理,这种传统人工的管理方式存在着许多缺点,如:效率低,保密性差,一方面导致教师对学生成绩情况不了解,教师对成绩管理工作倍感头痛,因为时间一长,将产生大量的文件和数据,这对于查找,更新和维护都带来了不少的困难,耗费大量劳动力,难于避免错误的产生。选择Eclipse来开发学生课程及成绩管理系统,解决以上存在的问题,帮助广大教师提高工作效率,实现学生成绩信息管理工作流程的系统化、规范化和自动化,所以选择Eclipse来开发学生课程及成绩管理系统。需求的收集及分析:学生课程及成绩管理系统应该完成以下两个方面的内容:学生课程的管理、学生成绩的管理,每个内容均需要提供添加、修改和查询的功能。学生课程及成绩管理系统在开发过程中收集到的客户需求文档记录的关键部分可概括为以下几个部分:1、可能会使用到该系统的用户:系统管理员、教师、学生;2、各类用户的权限不一样。例如系统管理员可以添加、修改、查询学生信息和学生的成绩,学生只能查询自己的成绩以及一些公共的信息,教师可以发布学生的成绩信息,而且只能查询自己所授课程的信息以及一些公共信息。3、要有系统备份功能,系统出故障时,因该有相应的应急措施或者系统恢复10功能。由此可见,学生课程及成绩管理系统需要满足3个方面的需求:管理员使用系统对全部数据进行维护操作;教师对于自己相关的部分数据实体进行操作;学生作为查询者对数据实体进行查询操作。现在的学生课程及成绩管理系统基本上能做到这几个方面的要求,但多数系统在功能上依然存在缺陷和不足,尤其是在用户界面的友好性以及查询结果的可视化方面存在着很大的问题。2.功能需求a.用户权限管理本系统的使用用户可分为以下三种:系统管理员(所有权限包括维护学生、教师、课程);老师(增加成绩,管理成绩);学生(查询成绩)。b.系统功能分析系统管理员的主要功能是:实现对用户的添加、删除和密码的修改,使该用户具有管理员的权限,实现对教师的管理,包括查看、添加和删除操作、实现对学生的管理,对学生进行添加和删除、也可以进行查询,例如按课程名查询所有选修了这门课程的学生成绩,并能够统计出该门课程的平均成绩等。除此之外可以发布公告等基本功能。教师的主要功能是:教师可以录入学生成绩,对学生信息进行添加、删除,也可以对发布的公告进行查看删除和修改等基本功能。学生的主要功能是:实现学生自己的成绩查询等功能。根据以上的叙述,弄清了用户对系统数据处理功能所提出的需求,本系统的功能可以归纳为以下几个方面。密码设置每个操作员均有自己的密码及能进行密码设置,这样既可以防止非本系统人员进入本系统,又可以防止本系统人员越权操作。权限设置设置每个人权限,使各人有各人的操作范围,不能超出自己的范围操作。一般只有负责人员即管理员可以进行权限设置。数据录入实现学生信息、老师信息、管理员信息、课程信息、新闻信息、学生成绩信息的录入。数据修改实现学生信息、老师信息、课程信息、学生成绩信息的修改。数据查询11可以实现学生信息、老师信息、管理员信息、课程信息、学生成绩信息的查询。成绩统计分析学生总平均成绩信息删除实现学生信息、老师信息、管理员信息、课程信息、成绩信息的删除。3.数据需求通过调查,总结出用户对数据的需求如下:学生信息包括:学号、学生姓名、专业等。课程信息包括:课程编号、课程名称等。教师信息包括:教师编号、教师名字、教授课程等。成绩信息包括:成绩编号、学生姓名、教师姓名、课程名字等公告信息包括:公告编号、公告主题、公告内容综上所述,可以得出以下功能:1.基本数据维护功能添加学生的基本信息。修改学生的基本信息。删除学生的基本信息。添加学生的成绩信息。修改学生的成绩信息。删除学生的成绩信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国桐果项目创业计划书
- 中国红干椒项目创业计划书
- 中国家电电商项目创业计划书
- 中国AR(增强现实技术)项目创业计划书
- 中国绒毛项目创业计划书
- 中国可可项目创业计划书
- 中国紧急洗眼器项目创业计划书
- 中国电子图书项目创业计划书
- 中国多功能超声监护仪项目创业计划书
- 中国5G手机项目创业计划书
- GB/T 3091-2015低压流体输送用焊接钢管
- GB/T 17530.5-1998工业丙烯酸及酯中阻聚剂的测定
- 广东省东莞市《财务会计知识》事业单位国考真题
- 前道设备简介及设计方法
- 交通指挥疏导技战术培训课件交警培训专用
- 公司业务提成方案
- 图解通信施工安全隐患
- 实际控制人股东会决议
- ANSIESD S20.202021 中英文对照版
- 投入的主要施工机械计划
- 《新闻采访写作》课程思政优秀教学案例(一等奖)
评论
0/150
提交评论