毕业设计(论文)-学生课程及成绩管理系统.doc_第1页
毕业设计(论文)-学生课程及成绩管理系统.doc_第2页
毕业设计(论文)-学生课程及成绩管理系统.doc_第3页
毕业设计(论文)-学生课程及成绩管理系统.doc_第4页
毕业设计(论文)-学生课程及成绩管理系统.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

基于Struts+Hibernate的学生课程及成绩管理系统2008届 分类号:TP311 单位代码:10452 学士学位毕业设计(论文)学生课程及成绩管理系统 -基于Struts+Hibernate姓 名 学 号 年 级 专 业 计 算 机 科 学 与 技 术系(院) 信 息 学 院 指导教师 摘 要本系统实现的是一个学生课程及成绩管理系统,它是整个教务管理系统中的一个子系统,系统方便了学生选课和查分,方便了教师的教学管理和学生成绩的录入,更方便了学校的教务管理。本系统采用MVC三层架构模式,在开发过程中使用了Struts和Hibernate来处理页面逻辑和对象的持久化工作。本系统主要用户是学生、教师和管理员。管理员管理系统的基本信息(如课程信息等),学生和教师通过系统完成不同的工作。系统需要实现的功能总体来说共有3个,分别如下:1、管理员维护系统基本信息;2、学生对应功能;3、教师对应功能;关键词:学生课程及成绩管理系统;MVC模式;Struts;Hibernate全套设计加扣 3012250582AbstractThe system is a curriculum and student performance management system . It was Educational Management System of subsystem.The system is convenient for students to select the course and search the score,also convenient for teachers to teaching management and the enter of the score by students,even more convenient for the educational administration management of the school. The system use the mode of three lever framework of MVC ,in the developing use the Struts and Hibernate to control the page and the persistence of object . Main users are students ,teachers and administrators. Manager management the system of basic information(such as the course information etc.),students and teachers through the system to complete the work. The system need to achieve the overall function to run three parts,as follows:One Maintenance System Administrators basic informationTwo Student response function Three Teachers corresponding functionKey Words:The curriculum and student performance management system Modular; MVC mode;Struts;Hibernate目 录前 言1第1章 系统概述及可行性分析21.1系统概述21.1.1管理员功能模块21.1.2学生功能模块21.1.3教师功能模块21.2 可行性分析21.2.1经济可行性分析21.2.2技术可行性分析31.2.3操作可行性分析3第2章 关键工具及其简介42.1 J2EE概述42.2 Struts与MVC42.3 Hibernate与ORM52.JSP(Java Server Pages)技术第3章 系统数据库设计3.1 系统分析3.1.1 需求分析3.1.2 系统功能模块划分3.1.3 系统流程13.2 系统设计113.2.1 数据库逻辑结构设计13.2.2 创建数据库13.2.创建表的脚本语言1第4章 系统的实现4.1 实现文件的组织4.2 系统功能实现94.2.1定义HibernateUtil94.2.2 定义EncodingFilter类14.2.3 数据层设计4.2.4 数据层代码实现4.2.5 创建持久化类4.3 功能代码实现14.3.1 登录功能14.3.2 登录功能的逻辑设计24.3.3 管理员管理学生功能实现4.3.4 学生登录后选择功能4.3.5 教师登录后选择功能4.4 实现核心方法代码第5章 系统安全性能及运行工程15.1 系统安全性能15.2 运行工程15.2.1 开发平台5.2.2 创建工程15.2.3 运行工程结 论参考文献附 录谢 辞5、基于Struts+Hibernate的学生课程及成绩管理系统前 言随着网络的普及与发展,学生课程及成绩管理系统为高校管理系统带来了方便,同时它是整个教务管理系统的一个子系统,对高校管理作用相当重要。该系统设计的目的是将学生选择的课程和学生成绩通过网络进行管理,为学生、教师和教务管理人员提供便利。本系统的用户共有3种类型,分别为系统管理员、学生及教师,系统对于一个用户只允许以一种身份登录。系统管理员登录系统后可以对系统进行管理,其主要操作是维护学生、教师、课程和班级的基本信息。学生登录后的主要操作是选课和个人信息的维护。教师登录后的主要操作是选择学生并为学生登录成绩。本系统使用的MVC三层架构的模式,在开发中并没有单纯地使用JSP+Servlet进行,而是结合了Struts和Hibernate,这是为了使用系统的结构更加清晰同时简化开发工作。下面将本系统的主要内容介绍如下:第1章主要介绍了系统概述及可行性研究。第2章主要介绍了关键工具及简介。第3章介绍了系统总体设计。第4章介绍了系统功能的实现。第5章介绍了系统安全性能。第1章 系统概述及可行性分析1.1系统概述本系统实现的是一个学生课程及成绩管理系统,它是整个教务管理系统中的一个子系统。主要用户是学生、教师和管理员、管理员管理系统的基本信息(如课程信息等),学生和教师通过系统完成不同的工作。系统需要实现的功能总体来说有三个部分,分别如下:1.管理员维护系统基本信息;2.学生对应功能;3.教师对应功能;该系统的开发过程为:1.学生课程及成绩管理系统的需求分析;2.学生课程及成绩管理系统的系统分析;3.学生课程及成绩管理系统的功能模块划分划分;4.学生课程及成绩管理系统的数据库设计;5.学生课程及成绩管理系统的界面设计;6.学生课程及成绩管理系统的数据库连接、功能模块设计及代码实现。该系统的功能模块主要由以下部分组成:1.1.1管理员功能模块不同用户登录系统时首先选择对应的用户类型,然后输入用户名及密码登录系统。系统的管理员由系统内部设定,可以维护学生、教师、课程以及班级的基本信息。管理员可以分别对学生、教师、课程以及班级进行查看、添加、编辑以及删除等信息。1.1.2学生功能模块此模块是学生管理操作界面,学生根据学生号和密码登录系统,初始的密码由管理员提供。学生登录系统后,可以修改个人信息、选课和查看学分。1.1.3教师功能模块此模块是学生教师操作界面,教师根据教室号和密码登录系统,初始的密码由管理员提供。教师登录后,选择学习本课程的学生和给学生打分。1.2 可行性分析可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对刚刚开发打算进一步应用的系统的必要性和可能性的分析和研究,对该系统的开发从经济、技术、操作三方面进行分析和研究。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。1.2.1经济可行性分析确定开发项目的开发成本以及估算开发项目所能够产生的经济效益:该系统目前在校园里受到一致好评,在方便高效快捷的基础上,有助于学生学习、教师工作及有效的管理的应用价值,有很好的实用和发展前景。所以本系统在经济上是可行的。1.2.2技术可行性分析确定现有的技术是否能解决本该开发项目:本系统主要采用Struts+Hibernate架构,采用Java语言,和Oracle数据库等主要技术,比较容易实现。所以在技术上也是可行的。123操作可行性分析确定软件产品是否能够被最终的用户所接受,用户是否能操作最终的产品:本系统操作简单,方便使用。所以在操作上也是可行的。综上所述,此系统开发目标已明确,在技术和经济,操作三方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。第2章 关键工具及其简介21 J2EE概述J2EE是美国Sun公司刚刚推出的一种全新概念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。目前,Java 2平台有3个版本,它们是适用于小型设备和智能卡的Java 2平台Micro版(Java 2 Platform Micro Edition,J2ME)、适用于桌面系统的Java 2平台标准版(Java 2 Platform Standard Edition,J2SE)、适用于创建服务器应用程序和服务的Java 2平台企业版(Java 2 Platform Enterprise Edition,J2EE)。J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的JDBC(Java DataBase Connectivity)应用程序接口(API, Application Program Interface)技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。2.2 Struts与MVCStruts由一组相互协作的类、Serlvet以及Jsp TagLib组成。基于Struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是MVC设计模式的一种变化类型。根据上面对framework的描述,我们很容易理解为什么说Struts是一个web framework,而不仅仅是一些标记库的组合。但 Struts 也包含了丰富的标记库和独立于该框架工作的实用程序类。Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,包括EJB,JDBC和Object Relation Bridge。在视图层,Struts能够与JSP, Velocity Templates,XSL等等这些表示层组件相结合。Struts的与Web App的关系既然struts叫做web framework,那么其肯定主要基于web层的应用系统开发。按照J2EE Architecture的标准,struts应当和jsp/servlet一样,存在于web container一层。图2.1 Struts与WebApp的关系2.3 Hibernate与ORMHibernate是JDBC的轻量级的对象封装,它是当前比较流行的对象持久化技术,也就是说,用hibernate可以将一个java对象保存到数据库。它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。从这个意义上来说,Hibernate和EJB不是一个范畴的东西,也不存在非此即彼的关系。 Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。图2.2Hibernate体系总览图由于Hibernate比较复杂,提供了好几种运行方式。在轻型体系中,应用程序自己提JDBC连接,并自行管理事务。这种方式使用了Hibernate API的一个最小子集。(如下图)图2.3 Hibernate轻型应用体系在前面解决体系中,对于应用程序来说,所有的底层JDBC/JTA API都被抽象了,Hibernate会替你照管好所有的细节。本文中所用到的就是这种体系。图2.4 Hibernate全面应用解决体系以下是图中一些对象的定义: 1)SessionFactory 对属于单一数据库的编译过的映射文件的一个线程安全的,不可变的缓存快照。它是Session的工厂,是ConnectionProvider的客户。可能持有一个可选的二级数据缓存,可以在进程级别后集群级别保存可以在事务中重用的数据。2)Session 会话 Session是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。封装了一个JDBC连接,也是Transaction的工厂。保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。3)持久化对象(Persistent Object)及其集合(Collection)生命周期短的单线程对象包含了持久化状态和商业功能。它们可能是普通的JavaBeans/POJOs,唯一特别的是他们现在都从属于且仅从属于一个Session。一旦Session关闭,他们都将从Session中取消联系,可以在任何程序层自由使用。4)事务(Transaction)事务也是生命周期短的单线程对象,应用程序用它来表示一批工作的原子操作。是底层的JDBC,JTA或者CORBA事务的抽象。一个Session某些情况下可能跨越多个事务。24 JSP (Java Server Pages)技术JSP技术提供了一种简单快速的方法来创建显示动态生成内容的Web页面。也就是在MVC中充当V(View)的角色。由业界处于领先地位的Sun公司制定了相关的JSP技术规范,该规范定义了如何在服务器和JSP页面间进行交互,还描述了页面的格式和语法。JSP页面使用XML标签和scriptlets(一种使用Java语言编写的脚本代码),封装了生成页面内容的逻辑。它将各种格式的标签(HTML或者XML)直接传递回响应页面。通过这种方式,JSP页面实现了页面逻辑与其设计和显示的分离。JSP技术是Java系列技术的一部分。JSP页面被编译成servlet,并可能调用JavaBeans组件(beans)或Enterprise JavaBeans组件(企业beans),以便在服务器端处理。因此,JSP技术在构建可升级的基于web的应用程 序时扮演了重要角色。 JSP页面并不局限于任何特定的平台或web服务器上。JSP规范在业界有着广泛的适应性。 JSP技术是行业协作的结果,它的设计是开放的,符合行业标准的,并支持绝大多数的服务器、浏览器和相关工具。由于使用可重用的组件和标签取代了对页面本身脚本语言的严重依赖,JSP技 术大大加快了开发的速度。所有JSP的实现均支持以Java编程语言为基础的脚本语言,它有与生俱来的可适应性,支持复杂的操作。第3章 系统总体设计3.1系统分析3.1.1需求分析 学生课程和成绩管理系统的设计目的是要将学生选择的课程和学生成绩通过网络进行管理。为学生、教师和教务管理人员提供便利。系统的用户有3种类型,分别为系统管理员、学生、教师,系统对于一个用户只允许以一种身份登录。系统管理员登录后可以对系统进行管理,其主要操作是维护学生、教师、课程和班级的基本信息。学生登录后的主要操作是选课和个人信息的维护。教师登录后主要操作是选择学生并为学生录入成绩。将系统需求加以总结,得出系统需求如下:l 系统可以运行在Windows操作系统平台上,并具有友好的用户界面。l 系统用户类型为:管理员、学生、教师。l 系统对于一个用户只允许以一种身份登录。l 只有管理员可以维护学生、教师、课程、班级的基本信息。l 学生可以选课并维护个人信息。l 教师可以选择上课的学生并为学生录入成绩。3.1.2 系统功能模块划分 模块分析是描述系统需求的一个过程,需要将需求分析中的感性描述进行抽象,提取出要实现的功能,这是整个系统开发的一个关键过程。 需求分析的第一步,是描述学生课程及成绩管理系统的功能,以此确定系统的功能需求。学生课程及成绩管理系统的角色是管理员、学生和教师,管理员对学生、教师、课程和班级信息进行维护,学生选择想要上的课程,查看所选的学分以及修改个人信息,教师决定上课的学生以及为学生打分。根据以上的用户操作需求,将系统划分如下3大功能,并对其模块的划分和功能进行描述l 管理员功能:登录:登录 学生管理:列表、增加、修改、删除 教师管理:列表、增加、修改、删除 课程管理:列表、增加、修改、删除 班级管理:列表、增加、修改、删除l 学生功能: 登录:登录 选课:选课 学分:学分 个人信息:修改l 教师功能:登录:登录选择学生:课程列表、学生列表公布成绩:课程列表、学生列表、成绩整个系统的模块结构如图3.1所示学生课程管理系统教师学生管理员查看学分修改信息选择学生公布成绩学生管理教师管理课程管理班级管理选课(图3.1)3.1.3系统流程本系统中的中心对象是学生和教师,根据以上的模块划分和功能分析可知,该系统的流程主要描述的是学生选择课程后,教师根据选课的学生决定哪些学生,最后教师给学生打分。该系统的使用对象包括学生、教师和管理员,因此包括3个基本的流程:管理员登录学生列表教师列表课程列表班级列表新增修改删除新增修改删除新增修改删除新增修改删除 (管理员的操作流程 图3.2)学生登录课程列表查看学分情况更改个人信息选颗 (学生的操作流程 图3.3)对应学生列表选择学生选择学生打分教师登录所教课程列表选择学生所教课程列表选择学生对应学生列表选择学生对应学生列表选择学生 选择学生打分(教师的操作流程 图3.4)3.2系统设计系统分析完成后,进入系统的设计阶段这是整个系统实现过程中非常重要的一个阶段。3.2.1 数据库逻辑结构设计本系统的用户有3类:管理员、学生和教师。由于管理员、学生和教师的权限和操作功能大不相同,因此在本系统中需要分别进行数据记录。l 管理员数据实体:管理员的登录帐号、姓名和密码;l 学生数据实体:学生号、密码、学生姓名、性别、学生所在系、藉贯、联系电话、电子邮件;l 教师实体:教师编号、密码、姓名、职称;l 课程数据实体:课程号、课程名、学分、系别和预选修课l 班级数据:班级号、教师、课程、教师和上课时间l 学生数据实体:学生号、所上班级、是否被老师接受和所给学分根据以上分析,设定每一个数据实体都有一个ID作为它的唯一标识,6个数据实体的关联关系如图(3.5)所示: admin表enrol表class_id number(20)stu_id number(20)accept varchar(32)score varchar(32)id nuber(32)name varchar(32)passwors varchar(32) id=class_id id=stu_idid bumber(20)tea_id number(20)cour_idnumber(20)room_id varchar(20)cour_time varchar(32)id number(20)name varchar(32)password varchar(32)jiguan varchar(32)department varchar(32)sex varchar(32)mark number(20)phone varchar(32)email varchar(32)student表 class表id number(20)name varchar(32)password varchar(32)title varchar(32)id=tea_idid=cour_idid number(20)name varchar(32)mark number(20)prepare varchar(32)dep varchar(32) teacher 表 course 表 ( 数据库表及表间关系 图3.5)3.2.2 创建数据库 本系统采用Oracle创建数据库,连接Oracle数据库创建6张数据表。 如表3.13.6表3.1 Admin管理员表序号字段含义类型1Id管理员编号number2Name姓名Varchar3Password密码Varchar表3.2 student表序号字段含义类型1Id学生编号number2Name姓名Varchar3Password密码Varchar4Jiguan藉贯Varchar5Department系别Varchar6Sex性别Varchar7mark学分number8tel联系电话Varchar9email电子邮箱Varchar 表3.3 class表序号字段含义类型1id班级编号number2tea_id任课教师姓名Varchar3cour_id课程编号Varchar4room_id上课教室号Varchar5cour_time上课时间Varchar表3.4 course表序号字段含义类型1id课程编号number2name课程名Varchar3mark学分number4prepare预选课程Varchar5dep所在系Varchar表3.5 teacher表序号字段含义类型1id教师编号number2name姓名Varchar3title职称Varchar4password密码Varchar表3.6 enrol表序号字段含义类型1stu_id学生号number2class_id班级编号number3accept是否被接受Varchar4score成绩Varchar3.2.3 创建表的脚本语言根据数据库字段设计,编写的创建数据库表的SQL语句如下:创建数据表Admin的SQL语句:create table admin _tbl(id number(20) not null,name varchar(32) default null,password varchar(32) default null,primary key(id);创建数据表student 的SQL 语句create table student_tbl(id number(20) not null, name varchar(32) default null,password varchar(32) default null,jiguan varchar(32) default null,department varchar(32) default null,sex varchar(32) default null,mark number(20) not null,phone varchar(32) default null,email varchar(32) default null,primary key(id);创建teacher 表的SQL语句 create table teacher_table(id number(20) not null,name varchar(32) default null,password varchar(32) default null,title varchar(32) default nullprimary key(id);创建course 表的SQL 语句create table course_tbl(id number(20) not null,name varchar(32) default null,mark number(20) not null,prepare varchar(32)default null,dep varchar(32) default null,primary key (id);创建classes的SQL语句create table_tbl(id number(20) not null,tea_id number(20) references teacher_table(id),cour_id number(20) references course_tbl(id),room_id varchar(32) default null,cour_time varchar(32) default null,primary key (id); 创建数据表enrol的SQL语句create table enrol_tbl(class_id number(20) references classes_tbl(id),stu_id number(20) references student_tbl(id),accept varchar(32) default null,score varchar(32) default null,primary key (class_id,stu_id);为了方便后面的开发,在这里先向数据库admin表插入三条记录insert into admin_tbl(1,”briup”,”briup”);insert into admin_tbl(2,”admin”,”admin”);insert into admin_tbl(3,”jia”,”jia”);第4章 系统的实现4.1实现文件的组织为体现Struts的MVC模式与Web应用的分层思想,我们按右图所示的结构组织文件。bean就是MVC中的M(Model),其中的文件是基本类及其与数据库表的hibernate映射文件。在dao包中有IDao和DAOImplemnt两个java文件,后者是前者的实现类。它们只负责与数据库的交互和给service提供基本的数据库交互服务。在service包中,IService和ServiceImp两个java文件,后者是前者的实现类。主要职责是使用dao中的服务为action提供服务。Web是MVC中的C(Controller),主要职责是为用户动作提供控制,控制着程序的执行动作为跳转方向。 (图4.1) WebRoot中的文件主要是直接为用户提供务的页面文件,也就是MVC中的V(View),负责界面的显示和与用户的交互。这样以来,V只使用或调用action里的服务,而action只调用service,service也只调用dao里面的方法。这种调用方向单一,有效地降低了耦合,增强了内聚。ActionJSPServiceBeanDAODB图4.2 程序的调用关系示意图4.2 系统功能实现 4.2.1 定义HibernateUtil本系统采用Struts+Hibernate技术进行开发,由Hibernate进行数据对象的操作,这里定义一个HibernateSessionFactory类负责初始化Hibernate.由它创建全局的SessionFactory实例,并且提供创建session实例,关闭Session实例,创建HibernateTransaction负责打开/关闭事物.这样在使用hibernate时更加方便,不用每次为创建SessionFactory实例、Session实例或者关闭Session实例而打开/关闭事务。事物操作单独些代码,只要调用上面类的方法就可以了,从而简化了操作.4.2.2 定义EncodingFilter类在进行Web页面开发时经常会遇到中文显示出现乱码的情况,这是有java内置的字符集与页面显示的字符集不一致造成的. 为了解决这个问题,需要进行字符编码转换,本系统通过定义一个Fileter来自动实现字符编码的转化,步驟如下:1.定义EncodingFilter类在com.stum.filter包下创建一个EncodingFilter类:2 配置这个Filter 在web.xml文件中添加如下代码filterfilter-nameencoding/filter-name filter-classcom.stum.filter.EncodingFilter/filter-class/filterfilter-mappingfilter-nameencoding/filter-nameurl-pattern/*/url-pattern/filter-mapping4.2.3数据层设计本系统的持久话逻辑采用Hibernate作为中间件,并使用DAO设计模式实现.主要是在业务核心方法和具体数据原之间增加一层,这样就减少了两者的耦合.每个持久话类对应一个DAO,它实现了持久化类的创建、查询、更新及删除方法,即CRUD(create 、retrieve、update、delete)方法,以及其他访问持久化机制方法。本系统所有与数据库逻辑有关的方法都在IDaol类中斯基现在com.student.dao包下 创建一个IDao接口并在com.stum.dao包下创建一个DaoImplment继承IDao接口实现具体的操作。4.2.4数据层代码实现本系统的持久化逻辑采用Hibernate作为中间件,并使用DAO设计模式实现.DAO模式创建对象/关系映射文件。为了使用Hibernate来持久化对象,首先要根据数据库的各个表创建映射文件.Admin、Student、Teacher、Course、Enrol类对应的hibernate映射文件都放到com.stum.bean包下映射文件分别如下: 1、Admin类映射文件2、Student类的映射文件3、Teacher类的映射文件 4、Course类的映射文件5、Classes 类的映射文件6、Enrol类的映射文件4.2.5创建持久化类 创建完映射文件后,需要创建持久化类,将这些类放到com.stum.bean包下1、 Admin类这个类对应管理员实体,用于实现管理员信息的持久化工作。2、Student类这个类对应学生实体,用于管理学生信息持久化工作。3、Teacher类这个类对应教师实体,管理教师信息持久化工作。4、Course 类这个类对应课程实体,管理课程信息持久化工作。5、Classes类这个类对应班级实体,管理班级信息持久化工作。6、Enrolid类这个类并不对应一个实体,它作为选课实体的一部分,作用是标识一个选课记录,可以把它理解为是选课实体(Enrol)的主键。7、Enrol类这个类对应于选课实体,用于实现选课信息持久化,。4.3 功能代码实现本系统才用MVC模式开发,功能代码封装在Action ,Service ,Dao 三层中分工清晰l 功能描述,描述这个功能以及实现此功能都需要那些方法。l 逻辑设计,通过一个图直观的给出页面之间的跳转。l 配置Struts,在strits-config.xml文件中配置实现这个功能需要用到的Form和Action,实现页面的跳转。l 创建模型Form,为创建Action提供支持。l 创建DAO,数据访问对象。l 创建辅助类,为实现功能作准备。l 创建Action,实现功能代码。4.3.1登录功能 系统的任何用户,都必须从系统的登录界面进入。为了便于开发和管理本系统采用三种登录方式,以体现管理员的权限。登录界面从图4.3开始 不同的用户点击不同的连接进入不同的登录界面,与登录有关的页面有:l login.jsp:主登录界面。l logins.jsp:学生登录界面,点击“学生登录”连接可以进入学生登录界面。l logint.jsp:教师登录界面,点击“教师”连接可以进入教师登录页面。l logina.jsp:管理员登录界面,点击“管理员登录”连接进入管理员登录。4.3.2登录功能的逻辑设计不同角色的用户登录系统时选择不同的用户类型登录,分别跳转到不同的页面,登录后通过验证进入不同的页面实现不同的操作。1.配置Struts在struts-config.xml文件中form-bean与form-bean标签之间添加如下代码form-beansform-bean name=StudentForm type=com.stum.form.StudentForm/form-beanform-bean name=TeacherForm type=com.stum.form.TeacherForm/form-bean/form-beans配置登录时用到的StudentForm、TeacherForm在action-mapping和/action-mapping标签之间添加,代码如下:action path=/logins name=StudentFormtype=com.stum.action.StudentAction parameter=loginsinput=/logins.jspforward name=loginFail path=/logins.jsp/forwardforward name=loginSuccess path=/student/student.jsp/forward/actionaction path=/logint name=TeacherFormtype=com.stum.action.TeacherAction parameter=logintinput=/logins.jspforward name=loginSuccess path=/teacher/teacher.jsp/forward/action配置action以及页面的跳转2. 创建模型Form为了向Action 提交信息,首先创建模型,在此创建类StudentForm,TeacherForm继承ActionForm :package com.stum.form;1. public class TeacherForm extends ActionForm2. private TeacherWjsTable teacher;3. public TeacherWjsTable getTeacher() 4. return teacher;5. 6.7. public void setTeacher(TeacherWjsTable teacher) 8. this.teacher = teacher;9. 10. public void reset(ActionMapping arg0, HttpServletRequest arg1) 11. 12. teacher=new TeacherWjsTable();13. 14. 15.

温馨提示

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

评论

0/150

提交评论