教务管理系统.docx

上传人:b****7 文档编号:9804553 上传时间:2023-02-06 格式:DOCX 页数:36 大小:337.76KB
下载 相关 举报
教务管理系统.docx_第1页
第1页 / 共36页
教务管理系统.docx_第2页
第2页 / 共36页
教务管理系统.docx_第3页
第3页 / 共36页
教务管理系统.docx_第4页
第4页 / 共36页
教务管理系统.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

教务管理系统.docx

《教务管理系统.docx》由会员分享,可在线阅读,更多相关《教务管理系统.docx(36页珍藏版)》请在冰豆网上搜索。

教务管理系统.docx

教务管理系统

 

班级:

java12-02

 

小组成员

职位

姓名

学号

完成功能模块

组员

吴贻顺

621213530233

后台数据操作函数TeacherDao.java,StudentDao.java,AdminDao.java

LoginAciton.java,数据库表操作,

组员

王帅

621213530228

后台数据表映射配置文件

Teacher.hbm.xml,Student.hbm.xml

Admin.hbm.xml

组员

喻铁朔

621213530242

后台Hibernate,struts配置文件

Hibernate.cfg.xml

Struts.xml,web.xml

组员

张高翔

621213530243

前台学生管理界面的实现

StuMain.jsp,Stutop.jsp,StumainF.jsp,Stuleft.jsp

组员

郅昌浩

621213530249

前台教师管理界面的实现TeaMain.jspTeatop.jsp,TeamainF.jsp,Tealeft.jsp

组员

辛修浩

621213530236

前台管理员界面的实现

index.jsp,register.jsp,reSuccess.jsp

 

1引言

1.1编写目的 

    编写本文档是为了明确用户的需求,用以精确软件框架结构设计,为测试提供依据。

并且是开发小组成员分工明确,让该组成员清楚将要完成的管理系统具备哪些具体功能及特点,以让成员能有一个很好的初步概念,目标明确,提高工作效率。

 

1.2背景 

说明:

 

1)待开发系统软件名称:

学生成绩管理系统; 

2)本项目的任务是由各组员共同讨论,共同开发,用于提升软件开发的能力

3)开发背景:

本系统属于郑州轻工业学院的教务管理模块,实现的是网络管理系统中关于学生成绩管理的子功能,通过此软件,提高用软件工程分析问题、解决问题的能力,同时增强对数据库和MyEclipse的使用能力,提高软件开发的环境搭建能力,SSH框架的应用能力。

 

4)针对郑州轻工业学院教务管理系统,做出的更精简的系统。

1.3定义 

1)存储过程是存储在服务器上的由SQL语句和控制流语句组成的一个预编译集合。

 2)触发器属于一种特殊的存储过程,可以在其中包含复杂的SQL语句。

触发器与存储过程的区别在于触发器能够自动执行并且不含有参数。

 

1.4参考资料 

【1】《JAVAWEB技术整合应用于项目实践》清华大学出版社作者:

张志峰

【2】《数据库技术与应用》

2需求规定

2.1目标

   通过软件工程的设计方法,主要采用javaEE,Struts,Hibernate,MySQL技术,以MySQL为数据库开发程序,此开发系统需实现的目标为节约资源,提高学籍信息的精确度,方便快速操作,精简人员,节约开支,结合学校管理的实际需求,实现对学生成绩等数据进行有效管理,以及对教师的课程等数据进行有效管理,提供查询分析修改等功能,做到管理方便、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优势。

 

2.2用户需求分析

  本系统包括两类使用用户:

一是管理员,即输入、修改和查询课程,管理学生学籍的老师,

二是用户,即查询成绩,选课,管理个人信息,的学生。

 

三是教师,即教学的老师,管理课程的老师。

 

作为教务管理系统,其主要的需求人员是学生与老师,需求人员对其的要求可以大体概括如下:

1) 学生的基本信息管理:

学号,姓名,系别,班级,分数等; 

2)课程的基本信息管理:

课程号,课程名,任课老师,学分,学时,学期,学年,课程类型,课程内容简介等;

3) 登录管理:

要求使用者提供合法的用户名、密码和相关权限; 

4) 成绩的录入:

要求老师(管理员)录入成绩,要用到前面的学生信息和课程信息等; 

2.3功能需求系统功能需求

我们的系统需要实现的功能主要包括以下几个方面:

设计不同用户的操作权限和登录方法;

管理员可以添加、修改和查询学生的档案记录,同时可以添加、修改和查询学生的成绩记录有对学生成绩信息开放度的管理权;

管理员对学生的档案和成绩进行审查,生成学生的档案记录报表和学生成绩报表;

教师可以查询所授课程的学生信息,可以录入并查询所授课程的成绩;

学生有查询个人档案信息和成绩信息的权利;

用户界面的直观性和成绩查询结果的可视化。

在查询结果的可视化方面,着主要是尤其针对当前众多的成绩管理系统的“通病”,我们所涉及的利于查询用户的一项新功能,除了带来便捷性之外,在数据的统计分析等方面也有很大的帮助。

满足上述要求的系统应该包括以下几个模块:

基本数据维护功能;数据库管理功能;基本业务功能。

2.4数据需求

通过调查,总结出用户对数据的需求如下:

基本数据的维护功能

添加学生的档案信息

修改学生的档案信息

删除学生的档案信息

删除学生的成绩信息

修改学生的成绩信息

添加学生的成绩信息

查询结果的可视化管理

(1)学生信息包括:

学号、学生姓名、性别、出生日期、所在学院、专业、班级等。

(2)课程信息包括:

课程编号、课程名称、所属专业等。

(3)选课信息包括:

学生姓名、课程名称、开课时间、成绩等。

一、基本数据维护功能

1、添加学生的档案信息。

2、修改学生的档案信息。

3、删除学生的档案信息。

4、添加学生的成绩信息。

5、修改学生的成绩信息。

6、删除学生的成绩信息。

7、查询结果的可视化管理。

描述图如下:

二、数据库管理功能

1、档案和成绩信息管理。

2、帐户信息管理。

3、档案和成绩信息查看管理。

三、基本业务功能

1、查看档案信息和成绩信息。

2、添加成绩信息。

由此,学生成绩管理系统的总体用例图设计如下:

2.5性能需求

通过分析,系统性能需求如下:

1.系统的高速性、稳定性、安全性。

2.系统的体系结构能够方便添加功能模块,适应业务、办公的发展。

3.系统人机界面友好,易学易用。

4.系统维护成本较低。

5出错处理需求

出错处理的任务是及时有效的避免或纠正错误:

1.接受到从另一个系统发来的违反协议格式的消息时要及时拒绝。

2.发现系统自己出现错误时要及时提出出错处理需求

2.6可行性分析

(1)经济可行性

教务管理系统对教务管理进行统一管理,实现教务管理工作的系统化,规范化和人性化,为教务管理提供便利。

与传统教务管理相比,教务管理系统提高了工作效率。

(2)技术可行性

现在社会对jsp+servlet+hibernate+struts的技术使用较为成熟的人才已

经很多,并且现在的各大高校和学生都拥有电脑。

(3)运行可行性

该系统需要搭建JVM即JAVA虚拟机和Tomcat,MyEclipse开发环境,在此环境下系统,并且在正确连接数据库后可以正常运行。

2.7用例图

学号

姓名

院系

年龄

课程

课程号

成绩

教师ID

姓名

选课人数

学生供

老师

管理员ID

密码

用户名

管理员

维护日志

教务管理系统的精简例图

2.8E-R图:

2.9数据库需求分析设计

表名

功能说明

管理员表(admin)

用于管理管理员账号和密码

课程表表(classes)

用于管理课程的信息

学生表(student)

保存学生的有关信息

学生选课表(student_classes)

保存学生成绩,学生标识和课程号,是把学生成绩与学生表和课程表关联起来的一个中间表

教师表(teacher)

保存教师的相关信息

admin表

字段名

类型

长度

是否允许为空

是否主键

是否外键

字段含义

id

int

20

标识

username

int

50

用户名

password

varchar

50

密码

classes表

字段名

类型

长度

是否主键

是否外键

字段含义

是否为空

cs_id

int

30

课程号

tea_id

int

50

教师号

chooseMax

int

11

最大选课人数

chooseCurNum

int

11

已选人数

room_id

varchar

50

教师号

cour_time

varchar

50

上课时间

cmark

varchar

50

学分

cname

varchar

60

课程名

学生表(student)

字段名

类型

长度

是否允许为空

是否主键

是否外键

描述

st_id

int

50

学生标识

sno

varchar

50

学号

username

varchar

50

用户名

sex

varchar

10

性别

password

varchar

20

密码

department

varchar

30

院系

jiguan

varchar

60

籍贯

mark

varchar

50

学分

email

varchar

50

电子邮件

image

varchar

100

照片

tel

varchar

50

电话

maxClasses

int

11

最大选课数

学生选课表

字段名

类型

长度

是否允许为空

是否主键

是否外键

描述

cscore

int

11

成绩

st_id

int

50

学生标识

cs_id

int

50

课程号

字段名

类型

长度

是否主键

是否外键

是否为空

字段含义

tid

int

50

教师号

tname

varchar

50

教师姓名

age

int

50

年龄

email

varchar

50

电子邮件

tel

varchar

50

电话

tpassword

varchar

50

教师密码

tea_id

varchar

50

教师类型

教师表

3任务概述及系统功能概述

3.1教务管理系统的系统特点

(1)、简洁美观的操作界面

美观又简单的操作界面对于一个教务网站,起着至关重要的作用。

操作过于复杂或网站的设计过于沉闷都会使使用者感到疲惫。

本系统通过工作人员的精心打造,使教务管理系统操作解密那的既时尚典雅,又动感十足。

(2)、教务管理模式

系统管理员系统分为4个模块:

系统管理员身份认证模块、教师管理模块、学生理模块。

3.2系统功能说明

3.2.1功能划分

1)、管理员管理系统

主登陆界面的:

标题部分截图:

学生管理模块部分截图:

2)、教师管理系统

教师管理模块界面截图:

3)、学生管理管理系统

学生管理功能模块部分截图:

4运行环境规定

4.1设备

运行本软件服务器端要在装有Tomcat服务器的系统上的计算机。

运行本软件客户端要安装IE浏览器或其它浏览器

4.2支持软件

本系统只是的操作系统包括:

WindowsXP/Win7Win8Linux。

本系统支持的数据库:

MySQL

本系统的开发工具:

tomcat7.0MyEclipse10.6。

 

5系统设计

项目结构:

后台:

部分代码的实现展示:

1.

2.

登录Action.Login类的具体实现:

packageAction;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpSession;

importorg.apache.struts2.ServletActionContext;

importAdmin.admin;

importDao.AdminDao;

importDao.TeacherDao;

importDao.Usermanager;

importStudent.student;

importTeacher.teacher;

importcom.opensymphony.xwork2.ActionSupport;

publicclassLoginextendsActionSupport{

privateStringusername;

privateStringsno;

privateIntegerid;

privateStringpassword;

privateIntegerradiobutton;

privateHttpServletRequestrequest;

Usermanagersm=newUsermanager();

publicStringgetUsername(){

returnusername;

}

publicvoidsetUsername(Stringusername){

this.username=username;

}

publicStringgetSno(){

returnsno;

}

publicvoidsetSno(Stringsno){

this.sno=sno;

}

publicIntegergetId(){

returnid;

}

publicvoidsetId(Integerid){

this.id=id;

}

publicStringgetPassword(){

returnpassword;

}

publicvoidsetPassword(Stringpassword){

this.password=password;

}

publicIntegergetRadiobutton(){

returnradiobutton;

}

publicvoidsetRadiobutton(Integerradiobutton){

this.radiobutton=radiobutton;

}

@Override

publicStringexecute()throwsException{

//TODOAuto-generatedmethodstub

if(radiobutton==1){

students=newstudent();

s.setSno(getSno());

s.setPassword(getPassword());

if(sm.stuLogin(s)){

request=ServletActionContext.getRequest();

HttpSessionsession=request.getSession();

studentsn=sm.getStudent1(sno);

session.setAttribute("username",sn.getUsername());

session.setAttribute("sno",this.sno);

session.setAttribute("id",sn.getStId());

returnSUCCESS;

}

returnINPUT;

}elseif(radiobutton==2){

TeacherDaotd=newTeacherDao();

teachertc=newteacher();

tc.setTeaId(sno);

tc.setTpassword(password);

if(td.tcLogin(tc)){

request=ServletActionContext.getRequest();

HttpSessionsession=request.getSession();

teachertec=td.getteacher(sno);

session.setAttribute("tname",tec.getTname());

session.setAttribute("tid",tec.getTid());

return"tsuccess";

}

returnINPUT;

}elseif(radiobutton==3){

AdminDaoad=newAdminDao();

adminam=newadmin();

am.setUsername(sno);

am.setPassword(password);

if(ad.adminLogin(am)){

request=ServletActionContext.getRequest();

HttpSessionsession=request.getSession();

adminadm=ad.getAdmin(sno);

session.setAttribute("username",adm.getUsername());

session.setAttribute("id",adm.getId());

return"asuccess";

}

returnINPUT;

}else{

returnINPUT;

}

}

@Override

publicvoidvalidate(){

//TODOAuto-generatedmethodstub

super.validate();

}

}

1.

2.

3.

4.

HibernateSessionFactory类的具体实现:

packageconf;

importorg.hibernate.HibernateException;

importorg.hibernate.Session;

importorg.hibernate.cfg.Configuration;

publicclassHibernateSessionFactory{

privatestaticStringCONFIG_FILE_LOCATION="/hibernate.cfg.xml";

privatestaticfinalThreadLocalthreadLocal=newThreadLocal();

privatestaticConfigurationconfiguration=newConfiguration();

privatestaticorg.hibernate.SessionFactorysessionFactory;

static{

try{

configuration.configure(CONFIG_FILE_LOCATION);

sessionFactory=configuration.buildSessionFactory();

}catch(Exceptione){

e.printStackTrace();

}

}

privateHibernateSessionFactory(){

}

publicstaticSessiongetSession()throwsHibernateException{

Sessionsession=(Session)threadLocal.get();

if(session==null||session.isOpen()){

if(sessionFactory==null){

rebuildSessionFactory();

}

session=(sessionFactory!

=null)?

sessionFactory.openSession():

null;

threadLocal.set(session);

}

returnsession;

}

publicstaticvoidrebuildSessionFactory(){

try{

configuration.configure(CONFIG_FILE_LOCATION);

sessionFactory=configuration.buildSessionFactory();

}catch(Exceptione){

e.printStackTrace();

}

}

publicstaticorg.hibernate.SessionFactorygetSessionFactory(){

returnsessionFactory;

}

publicstaticConfigurationgetConfiguration(){

returnconfiguration;

}

}

1.

2.

3.

AdminDao类的具体实现:

packageDao;

importjava.util.ArrayList;

importjava.util.List;

importorg.hibernate.Query;

importorg.hibernate.Session;

importorg.hibernate.Transaction;

importStudent.student;

importClass.Classes;

importconf.HibernateSessionFactory;

publicc

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 唐诗宋词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1