已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业论文(设计) 题 目 学生成绩管理系统 学生姓名 学 号 院 系 计算机与软件学院专 业 计算机科学与技术专业指导教师 二一 年 五 月 二十 日38声 明本人郑重声明:1、 持以“求实、创新”的科学精神从事研究工作。2、 本论文是我个人在导师指导下进行的研究工作和取得的研究成果。3、 本论文中除引文外,所有实验、数据和有关材料均是真实的。4、 本论文中除引文和致谢的内容外,没有抄袭其他人或其他机构已经发表或撰写过的研究成果。5、 其他同志对本研究所做的贡献均已在论文中作了声明并表示了谢意。作者签名: 日 期: 目 录1、研究现状1、技术和工具1.1、C/S结构和B/S结构的对比分析12.2、JSP开发工具介绍22.3、J2EE架构介绍32.3.1、Struts框架32.3.2、Spring框架42.3.3、Hibernate框架42.4、MySQL开发工具介绍53、主要功能64、系统设计74.1、数据库设计74.2、创建映射文件和持久化类94.3、编写DAO层104.4、功能模块设计104.4.1、登陆注销模块104.4.2、top.java、home.java文件以及editSuccess.jsp、addSuccess.jsp文件114.4.3、班级管理模块124.4.4、学年管理模块134.4.5、课程管理模块144.4.6、学生管理模块164.4.7、教师管理模块164.4.8、课程分配模块164.4.9、成绩管理模块174.4.10、成绩查看模块174.4.11、个人信息管理模块184.5、配置文件194.5.1、配置struts.xml文件194.5.2、配置applicationContext.xml195、系统介绍205.1登陆界面205.2管理员界面215.3、教师界面255.4、学生界面286、结束语29学生成绩管理系统王潇(南京信息工程大学计软院计科系,南京 210044)摘要:本系统采用的是B/S结构,使用的工具是JSP和MySQL。该系统可以对学生的基本信息和成绩进行管理,包括学生基本信息的录入和修改,学生成绩的录入,成绩的管理以及成绩查询等功能,该系统有三种用户,按权限从高到低分别为:管理员、教师和学生。管理员管理教师和学生的基本信息,教师和学生都可直接从网上查询成绩信息和修改本人的密码。学生成绩管理系统可以提高学校成绩管理水平,实现数字化校园。关键字:成绩管理 JSP MySQL B/S J2EE 1、研究现状学生成绩管理是教学过程中的一个重要环节,工作量繁重而且易出错。它包括学生成绩汇总,每个学生成绩单的填写和发放,教师对学生成绩的统计分析,学生名次的排列,以及不及格人数统计和名单,并且为不及格的学生安排补考和补考成绩的填写等很多复杂的方面。人工完成这些工作,不仅费时费力,而且一不小心就会出错。使用数据库技术进行数据处理,将很大程度上解决这个问题。编写一个适合学校使用的学生成绩管理系统,可以把工作人员从繁重的工作里解放出来,不但能节约人力,而且提高了工作效率,减少了出错的频率。这对于学校来说,是一个十分划算的方法。、技术和工具.1、C/S结构和B/S结构的对比分析本系统采用B/S结构,即浏览器服务器结构。B/S结构是在C/S结构(客户机/服务器结构)的基础上建立的,这种结构使用户界面完全通过WWW浏览器实现,并采用三层体系结构,解决了两层体系结构中的缺点。把应用逻辑独立出来形成一个中间层 ,中间层存在于客户层与存储层之间。比传统C/S结构更加优越。优点有以下几方面:(1)、系统一般只有初期一次性投入成本,维护和升级简单,成本低。B/S结构的客户端只是浏览器,维护和升级只需在服务器进行,无论有多少用户使用,都不会影响服务器升级。而C/S结构对客户端要求很高,每个客户端必须安装应用软件,升级对象包括客户机和服务器,相当于重新设计系统,工程浩大。(2)、使用更加方便灵活,范围广。B/S结构建立在广域网上,对客户端没有要求,只要能够进入浏览器,用户可以在任一台电脑上登录系统,查询成绩信息。C/S结构作用与局域网,对客户端要求高,适用范围小,用户离开固定区域,便无法进入系统,如学生放假回家就不能查询成绩。(3)、数据响应及时,实时性高。B/S结构可以看到当前进行的业务,方便快速处理,而C/S结构只能给出事后数据。(4)、数据一致性高。B/S结构的一切数据都存放在总服务器中,对数据的修改也是在服务器中进行的,任何用户都可以得到一致的信息。而C/S结构同步性较差,一个地方出现缺陷,整个系统都必须重新部署,来保证数据一致,效率低。2.2、JSP开发工具介绍JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。JSP在多个方面加速了动态Web页面的开发,有以下几个方面的优点:(1)、将内容的生成和显示进行分离 使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。(2)、强调可重用的组件 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeans TM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 (3)、采用标识简化页面开发 Web页面开发人员不会都是熟悉脚本语言的编程人员。Java ServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。 通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。(4)、强大的可伸缩性从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(5)、平台适应性更广这是JSP比ASP的优越之处,几乎所有的平台都支持Java、JSP+JavaBeans,他们可以在任何平台下畅通无阻。从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。另外,JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。当与Java2平台,企业版(J2EE)和EnterpriseJavaBeans技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。2.3、J2EE架构介绍J2EE(Java 2 Platform,Enterprise Edition)以Java2为技术基础,是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。 J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,,企业内部或外部难以互通的窘境。J2EE平台使用了一个多层的分布式应用程序模型,该模型具有重用组件的能力、基于扩展标记语言的数据交换、统一的安全模式和灵活的事务控制。典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。 J2EE的具体实现采用三大核心框架: Struts、Spring、Hibernate。下面简单介绍一下三种核心框架。2.3.1、Struts框架Struts最早是作为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServer Pages 、Servlet、标签库以及面向对象的技术水准。Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。这个框架之所以叫Struts,是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。Struts是一种基于MVC经典设计模式的开放源代码的应用框架,也是目前Web开发中比较成熟的一种框架。通过把Servlet、JSP、JavaBean、自定义标签和信息资源整合到一个统一的框架中,为Web开发提供具有高可配置性的MVC开发模式。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式分离显示逻辑和业务逻辑的能力发挥得淋漓尽致。Structs 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts有一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP。MVC是Model-View-Controller的缩写,中文翻译为模型-视图-控制器。就像字面的意思,MVC模式的结构是由模型(Model)、视图(View)、控制器(Controller)三部分组成的。模型:应用程序的主体部分,用于表现业务数据,或者业务逻辑。视图:应用程序中用户界面相关的部分,是用户看到并与之交互的界面。控制器:用于根据用户的输入,控制用户界面数据显示,更新Model对象状态。Struts体系结构实现了MVC设计模式的概念,它将Model、View和Controller分别映射到Web应用的组件。2.3.2、Spring框架Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许用户选择使用哪一个框架,这也是Spring与Spring和Hibernate等其它框架不同的地方。Spring致力于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring并不想取代那些已有的框架,而是与它们无缝地整合。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式。组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。2.3.3、Hibernate框架Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate是一个高性能的ORM持久性和查询服务。Hibernate 不仅管理Java 类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL 和JDBC 处理数据的时间。它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。Hibernate是一个JDO工具,它的工作原理是通过文件把值对象和数据库表之间建立起一个映射关系,这样,只需要操作这些值对象和Hibernate提供的一些基本类,就可以达到使用数据库的目的。例如,使用Hibernate的查询,可以直接返回包含某个值对象的列表(List),而不必向传统的JDBC访问方式一样把结果集的数据逐个装载到一个值对象中,为编码工作节省了大量时间。Hibernate提供的HQL是一种类SQL语言,它和EJBQL一样都是提供对象化的数据库查询方式,但HQL在功能和使用方式上都非常接近标准的SQL。2.4、MySQL开发工具介绍SQL全称是“结构化查询语言(Structured Query Language)”,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL集数据查询、数据操纵、数据定义和数据控制功能为一体,功能强大且简洁易懂,其主要特点有以下几个方面。(1)、综合统一。SQL集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于一体,可以独立完成数据库的所有活动。对于非关系模型的数据语言来说,数据库运行后,若要修改模式,必须对数据库进行重装,十分繁琐。使用SQL,用户可以在数据库运行后,随时修改数据库系统的模式,不影响该数据库的运行,而且数据结构单一,实体和实体间的联系都用关系表示,使该语言更加简单。这些特点使数据库系统拥有良好的可扩展性和统一性,降低了操作复杂性。(2)、高度非过程化。非关系数据库的语言是过程化的,必须指定存取路径。而SQL只需提出做什么,不用管怎么做,由系统自动完成存取路径的选择以及SQL的操作过程,使用户更方便,提高了数据的独立性。(3)、面向集合的操作方式。SQL直接对集合进行操作,所有操作如插入、删除、修改等都是针对元组的集合,而不是对一条条的纪录进行逐一操作。减少了工作量,降低了出错率。(4)、以同一种语法结构提供多种使用方式。SQL既是独立的语言,又是嵌入式语言。它可以独立使用,进行数据库操作,也可以嵌入到如C、Java等高级语言中使用。而且,不管哪一种方式,语法结构基本不变,使SQL的使用更加灵活方便。此外,SQL十分接近英语口语,语言简洁,甚至核心动词只有九个,即使是初学者也能快速上手。3、主要功能该系统有以下几个功能:1、密码服务。每个人都有初始密码,登陆进系统后,用户可以自行修改。2、管理教师和学生的基本信息,包括学生的姓名、学号、性别、班级、联系方式以及每学期所学科目和该科目的任课老师,教师的姓名、职员号、性别、联系方式以及所教授的科目等多个方面。只有管理员有权限使用此功能,对教师和学生的信息进行添加、删除和修改。3、管理学生成绩。考试完后,教师可以直接将学生各科目的成绩输入系统,保证了成绩的及时性。如果出现错误,学生可以向老师申请,经核实有误后由该授课老师对学生的错误成绩进行修改。4、成绩的查询功能。教师输入成绩后,所有用户都可在网上查询学生的成绩。不同用户有不同权限,学生只可查询本人成绩,教师可以查询所有学生成绩。5、提供操作界面。针对不同的用户权限,提供不同的操作界面,用户可以通过界面直接使用以上所述功能,操作简单易懂。学生成绩管理系统登陆界面管理员管理教师和学生的基本信息教师查询学生成绩输入学生成绩学生查询本人成绩修改本人的密码图3.1学生成绩管理系统整体结构图修改本人的密码修改本人的密码4、系统设计4.1、数据库设计根据系统的功能要求,主要构造以下几个表:(1)、学生表:学生编号、学生姓名、性别、电话号码、邮箱地址、登陆密码、班级号、学号(关键字为学生编号)如下图4.1 学生表。图4.1 学生表(2)、教师表:教师编号、教师姓名、工号、登陆密码、性别、邮箱地址、电话号码(关键字为教师编号)如下图4.2教师表。图4.2 教师表(3)、管理员表:管理员编号、用户名、登陆密码、(关键字为管理员编号)如下图4.3管理员表。图4.3 管理员表(4)、学年表:学年编号、学年名、是否为当前学年(关键字为学年编号)如下图4.4学年表。图4.4 学年表(5)、班级表:班级编号、班级名称(关键字为班级编号)如下图4.5班级表。图4.5 班级表(6)、课程表:课程编号、课程名称、开科学年(关键字为课程编号)如下图4.6课程表。图4.6 课程表(7)、课程分配表:课程分配编号、授课教师编号、开课班级编号、课程名称编号(关键字为课程安排编号)如下图4.7课程安排表。图4.7 课程安排表(8)、成绩表:成绩编号、成绩分值、学生编号、教师编号、课程编号、学年编号(关键字为成绩编号)如下图4.8成绩表。图4.8 成绩表4.2、创建映射文件和持久化类Hibernate 映射文件包含了对象/关系映射(O/R Mapping)所需的元数据。元数据包含持久化类的声明和属性到数据库的映射(指向字段和其他实体的外键关联)。持久化类是指其实例需要被Hibernate持久化到数据库中的类。持久化类通常都是域模型中的实体域类,一般都是一张数据库表对应一个持久化类。由上可示,本系统共有8个数据表,需要为每一个数据表编写映射文件和持久化类:学生表对应的映射文件和持久化类为Student.hbm.xml和Student.java;教师表对应的映射文件和持久化类为Teacher.hbm.xml和Teacher.java;管理员表对应的映射文件和持久化类为Admin.hbm.xml和Admin.java;学年表对应的映射文件和持久化类为Schoolyear.hbm.xml和Schoolyear.java;班级表对应的映射文件和持久化类为Classes.hbm.xml和Classes.java;课程表对应的映射文件和持久化类为Course.hbm.xml和Course.java;课程分配表对应的映射文件和持久化类为Assign.hbm.xml和Assign.java;成绩表对应的映射文件和持久化类为Score.hbm.xml和Score.java。 4.3、编写DAO层所谓的DAO(Data Access Object)层,就是数据访问接口,DAO可以实现对数据库的各种操作。本系统为每一个数据表编写了一个DAO类。DAO所执行的操作包括,数据插入,数据修改,以及所有数据查询和按关键字查询。StudentDAO.java执行对学生表的各种操作,TeacherDAO.java执行对教师表的各种操作,AdminDAO.java执行对管理员表的各种操作,SchoolyearDAO.java执行对学年表的各种操作,ClassesDAO.java执行对班级表的各种操作,CourseDAO.java执行对课程表的各种操作,AssignDAO.java执行对课程分配表的各种操作,ScoreDAO.java执行对成绩表的各种操作。4.4、功能模块设计4.4.1、登陆注销模块登陆注销模块包括login.jsp、LoginAction.java、LogoffAction.java,(1)、login.jsp提供本系统的登陆界面,获取用户输入的用户名和密码,获取代码如下:var username=document.getElementById(username).value;var password=document.getElementById(password).value;login.jsp发送名字为login的action请求,根据struts.xml文件调用LoginAction.java文件,点击登陆按钮后即执行此项操作。关键代码如下所示:form action=login.action method=post onsubmit=return check();LoginAction.java文件处理login.action的请求,根据用户在登陆界面选择的角色,该文件执行不同的操作。以管理员登陆为例,如果在登陆界面获得的role值为admin,则调用DAO层adminDAO,将获取的用户名和密码与数据库中的数据相对比,若正确,则返回success值,若值不正确,则返回值为input,代码如下所示:if(role.equalsIgnoreCase(admin)Admin admin=new Admin();admin.setUsername(username);admin.setPassword(password);List aList=adminDAO.findByExample(admin);)根据返回值,调用struts.xml文件,即如下代码,返回值为success,转到home.jsp文件,返回值为input,则重新回到login.jsp文件。 /WEB-INF/jsp/home.jsp /login.jsp (2)、LogoffAction.java提供注销操作,用户进入系统后可在界面上选择注销按钮,即调用struts.xml文件,启用LogoffAction.java文件,以完成用户注销,以学生为例,代码如下,执行注销操作,返回success值。if(role.equalsIgnoreCase(student) session.removeAttribute(student);session.removeAttribute(username);session.removeAttribute(role);return success;映射代码如下,指定LogoffAction.java的路径,得到success返回值,然会返回login.jsp,即回到登陆界面。 /login.jsp 4.4.2、top.java、home.java文件以及editSuccess.jsp、addSuccess.jsp文件头文件为top.java,提供需要重复显示的界面元素,如登陆系统后显示的欢迎语句、注销按钮,以及根据不同的登陆用户提供的不同操作按钮等。其他文件可以直接在头文件中调用,降低了程序的复杂度,减少需要重复编写的代码。以登陆对象为admin为例,所要调用的代码如下所示,为用户提供各种功能的操作按钮,当用户选择时即发出相对应的action请求。查看成绩 个人信息管理用户登陆后,即转到home.java文件,该文件为用户提供登陆后的初始操作界面,不显示任何数据信息,代码为直接调用top.java文件,如下所示:addSuccess.jsp为添加操作成功后所调用的文件,功能为回到主界面。关键代码为: window.parent.location.reload();editSuccess.jsp为编辑操作成功后所调用的文件,功能为回到主界面。关键代码为: window.parent.location.reload();4.4.3、班级管理模块班级管理模块包括managerClass.jsp 、addClass.jsp、editClass.jsp、ManagerClassAction.java。managerClass.jsp提供班级管理界面并显示班级信息,addClass.jsp提供添加弹出框,editClass.jsp提供编辑弹出框,ManagerClassAction.java提供各种操作。(1)、管理员登陆后,选择管理班级按钮,即发送managerClass.action请求,根据struts.xml文件调用ManagerClassAction.java文件,执行以下代码。调用classesDAO,查询数据库中所有的班级,并返回success值,根据struts.xml文件调用managerClass.jsp文件。 classesList=classesDAO.findAll();return success;managerClass.jsp提供管理班级的显示界面,将ManagerClassAction.java查询到的数据显示出来, 并提供编辑、删除和添加按钮。(2)、当用户选择添加按钮时即发送addClass.action请求,根据struts.xml文件调用ManagerClassAction.java文件中的addClass对象,并返回success值。根据返回值,在struts.xml文件中调用addClass.jsp文件。系统转到addClass.jsp文件,即弹出班级添加框,用户可在添加框内添加班级。此文件提供添加按钮,用户点击按钮后执行以下代码所示操作,即发送addClassdo.action请求。根据请求在struts.xml文件中调用ManagerClassAction.java文件中的addClassdo对象,如以下代码所示。Classes classes=new Classes();classes.setClassname(classname);classesDAO.save(classes);return success;该对象调用classesDAO中的类将用户添加的班级数据存入数据库,并在操作结束后返回success值。根据返回值,在struts.xml文件中转到addSuccess.jsp文件,执行回到主界面操作,即返回执行managerClass.jsp。(3)、当用户选择编辑按钮时即发送editClass.action请求,同时发送的还有所编辑班级的编号。在struts.xml文件调用ManagerClassAction.java文件中的editClass对象。在该对象中调用classesDAO,根据获得的编号在数据库中查询班级信息,最后返回success值Classes classes=classesDAO.findById(id);classname=classes.getClassname();return success;根据返回值,在struts.xml文件中调用editClass.jsp文件。系统转到editClass.jsp文件,即弹出班级编辑框,用户可在编辑框内编辑班级。此文件提供保存按钮,用户点击按钮后执行以下代码所示操作,即发送editClassdo.action请求。根据请求在struts.xml文件中调用ManagerClassAction.java文件中的editClassdo对象,如以下代码所示,该对象调用classesDAO将用户编辑的班级数据存入数据库,并在操作结束后返回success值。根据返回值,在struts.xml文件中转到editSuccess.jsp文件,执行回到主界面操作,即返回执行managerClass.jsp。Classes classes=classesDAO.findById(id);classes.setClassname(classname);classesDAO.update(classes);return success;(4)、当用户选择删除按钮时发送delClass.action请求当,根据struts.xml文件调用ManagerClassAction.java文件中的delClass对象,然后调用classesDAO,直接执行数据删除操作,并返回success值。根据返回值,调用struts.xml文件返回执行managerClass.jsp。Classes classes=classesDAO.findById(id);classesDAO.delete(classes);return success;4.4.4、学年管理模块学年管理模块包括managerYear.jsp、addYear.jsp、editYear.jsp、ManagerYearAction.java 。managerYear.jsp提供学年管理界面并显示学年信息,addYear.jsp提供添加弹出框,editYear.jsp提供编辑弹出框,ManageYearAction.java提供各种操作。学年管理模块的流程和代码与班级管理模块类似。(1)、管理员登陆后,若选择管理学年按钮,即发送managerYear.action请求,根据struts.xml文件调用ManagerYearAction.java文件,执行以下代码,查询数据库中所有的学年信息,并返回success值,syList=schoolyearDAO.findAll();return success;根据返回值,从struts.xml文件中调用managerYear.jsp。managerYear.jsp提供管理学年的显示界面,将ManagerClassAction.java查询到的数据显示出来,并提供编辑、删除和添加按钮。(2)、当用户选择添加按钮时即发送addYear.action请求,调用ManagerYearAction.java文件中的addYear对象,并返回success值。根据返回值,调用addYear.jsp文件。系统转到addYear.jsp文件,即弹出学年添加框,用户可在添加框内添加学年信息。此文件提供添加按钮。用户点击按钮后发送addYeardo.action请求,调用ManagerYearAction.java文件中的addYeardo对象。该类调用schoolyearDAO将用户添加的学年数据存入数据库,并在操作结束后返回success值。根据返回值,转到addSuccess.jsp文件,执行回到主界面操作,即返回执行managerYear.jsp。(3)、当用户选择编辑按钮时即发送editYear.action请求,同时发送的还有所编辑学年的编号。调用ManagerYearAction.java文件中的editYear对象,根据获得的编号在数据库中查询学年信息,最后返回success值根据返回值,转到editYear.jsp文件,即弹出学年编辑框,用户可在编辑框内编辑学年。此文件提供保存按钮,用户点击按钮后发送editrYeardo.action请求。根据请求调用ManagerYearAction.java文件中的editYeardo对象,将用户编辑的学年数据存入数据库,并在操作结束后返回success值。根据返回值,转到editSuccess.jsp文件,执行回到主界面操作,即返回执行managerYear.jsp。(4)、当用户选择删除按钮时发送delrYear.action请求,调用ManagerYearAction.java文件中的delYear对象,然后直接执行数据删除操作,并返回success值。根据返回值,返回执行managerYear.jsp。Schoolyear schoolyear=schoolyearDAO.findById(id);schoolyearDAO.delete(schoolyear);return success;4.4.5、课程管理模块课程管理模块包括managerCourse.jsp、addCourse.jsp、editCourse.jsp、ManagerCourseAction.java。managerCourse.jsp提供课程管理界面并显示课程信息,addCourse.jsp提供添加弹出框,editCourse.jsp提供编辑弹出框,ManageCourseAction.java提供各种操作。ManageCourseAction.java包括六个对象,execute对象:发出转到managerCourse.jsp文件要求;addCourse对象:发出转到addCourse.jsp文件要求;addCoursedo对象:执行添加课程操作;editCourse对象:发出转到editCourse.jsp文件要求、editCoursedo对象:执行编辑课程操作、delCourse对象:执行删除课程操作。(1)、管理员登陆后,选择管理课程按钮,发送managerCourse.action请求即调用ManagerYearAction.java文件中的execute对象,调用managerCourse.jsp。managerCourse.jsp提供管理课程的显示界面,将execute对象查询到的数据显示出来, 并提供编辑、删除和添加按钮,以及为每一个按钮设置action,用户点击即可发送该action请求。以添加按钮为例,代码为function add() var url=addCourse.action; (2)、当用户选择添加按钮时即发送addCourse.action请求,调用ManagerCourseAction.java文件中的addCourse对象,以调用addCourse.jsp文件。系统转到addCourse.jsp文件,即弹出课程添加框,用户可在添加框内添加课程信息。此文件提供添加按钮。用户点击按钮后发送addCourse.action请求,调用ManagerCourseAction.java文件中的addCoursedo对象。 addYeardo对象调用CourseDAO中的类将用户添加的课程数据存入数据库,并在操作结束后返回success值。根据返回值,转到addSuccess.jsp文件,执行回到主界面操作,即返回执行managerCourse.jsp。(3)、当用户选择编辑按钮时即发送editCourse.action请求,同时发送的还有所编辑课程的编号。调用ManagerCourseAction.java文件中的editCourse对象,根据获得的编号在数据库中查询课程信息,最后返回success值。根据返回值,转到editCourse.jsp文件,即弹出学年编辑框,用户可在编辑框内编辑班级。此文件提供保存按钮,用户点击按钮后发送editrCoursedo.action请求。根据请求调用ManagerCourseAction.java文件中的editCoursedo类,将用户编辑的学年数据存入数据库,并在操作结束后返回success值,代码如下。根据返回值,转到editSuccess.jsp文件,执行回到主界面操作,即返回执行managerCourse.jsp。Course course=courseDAO.findById(id);course.setCoursename(coursename);course.setYearid(schoolyear);courseDAO.update(course);return success;(4)、当用户选择删除按钮时发送delrCourse.action请求,调用ManagerCourseAction.java文件中的delCourse对象,然后直接执行数据删除操作,并返回success值,代码如下所示。根据返回值,返回执行managerCourse.jsp。Course course=courseDAO.findById(id);courseDAO.delete(course);return success;4.4.6、学生管理模块学生管理模块包括managerStudent.jsp、addStudent.jsp、editStudent.jsp、ManagerStudentAction.java。managerStudent.jsp提供学生管理界面并显示学生信息,addStudent.jsp提供添加弹出框,editStudent.jsp提供编辑弹出框,ManageStudentAction.java提供各种操作。ManageStudentAction.java包括六个对象,execute对象:发出转到managerStudent.jsp文件要求;addStudent对象:发出转到addStudent.jsp文件要求;addStudentdo对象:执行添加学生操作;editStudent对象:发出转到editStudent.jsp文件要求、editStudentdo对象:执行编辑学生操作、delStudent对象:执行删除学生操作。学生管理模块中操作流程和关键代码与课程管理模块中的内容十分相似,不作详细介绍。4.4.7、教师管理模块教师管理模块包括managerTeacher.jsp、addTeacher.jsp、editTeacher.jsp、ManagerTeacherAction.java。managerTeacher.jsp提供教师管理界面并显示教师信息,addTeacher.jsp提供添加弹出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家庭深度保洁作业操作流程规范
- 养殖废弃物资源化利用制度
- 健康咨询服务问诊话术规范
- 甘薯脱毒苗繁育体系构建方案
- 骨密度检测数据分析指引
- 生态破坏应急调查处理办法
- 淋巴排毒理疗标准流程
- 周年庆活动策划方案执行手册
- 肉牛犊牛断奶补饲饲养管理规范
- 突发环境事件专项应急预案
- GB/T 8076-2025混凝土外加剂
- 高二上学期哪吒课堂趣味惩罚游戏(课件版)
- 2025年七年级数学下册重点突破训练:相交线平行线类型题举例99题(人教版)学生版
- 供应商评估表格模板多指标评价
- 私密课件的讲解
- 2025(第十届)变电智能运检创新发展大会:资产全寿命周期管理
- 2025年甘肃省酒泉市农业农村局公益性岗位招聘备考练习试题及答案解析
- 羽毛球教练员培训课件
- 三级电子病历评审医院汇报
- 2025年上半年上海铁路文旅传媒集团有限公司校招笔试题带答案
- 2025年高考日语试卷及答案详解
评论
0/150
提交评论