软件工程专业学生选课系统设计.docx

上传人:b****2 文档编号:23456164 上传时间:2023-05-17 格式:DOCX 页数:23 大小:236.09KB
下载 相关 举报
软件工程专业学生选课系统设计.docx_第1页
第1页 / 共23页
软件工程专业学生选课系统设计.docx_第2页
第2页 / 共23页
软件工程专业学生选课系统设计.docx_第3页
第3页 / 共23页
软件工程专业学生选课系统设计.docx_第4页
第4页 / 共23页
软件工程专业学生选课系统设计.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

软件工程专业学生选课系统设计.docx

《软件工程专业学生选课系统设计.docx》由会员分享,可在线阅读,更多相关《软件工程专业学生选课系统设计.docx(23页珍藏版)》请在冰豆网上搜索。

软件工程专业学生选课系统设计.docx

软件工程专业学生选课系统设计

 

学生选课系统实验报告

 

工程名称:

学生选课系统

 

姓名:

 

学号:

 

班级:

 

指导老师:

 

一.课程设计的目的与要求

通过软件开发的实战训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计和综合分析,解决问题的能力。

具体如下:

学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;

1.学习使用MyEclipse开发工具的使用。

2.进一步加强和提高软件工程文档的编写能力;

3.培养协作能力和团队精神。

一.设计正文

1.概述

课程题目:

学生选课系统

系统的主要目标:

本系统的目标是实现选课系统需所需的各种根本功能,包括学生选课,教师查看选修的课程,提交课程成绩功能以及管理添加学生,维护学生的信息,成绩管理,添加教师,维护教师的信息。

维护选修课程,查看学生的信息,查看教师的信息,查看课程的信息。

更新学生,老师,和课程的信息。

包括增加修改删除查找。

系统的开发环境及运行环境

操作系统:

windows

建模工具

数据库系统:

sqlserver2005

开发工具:

WEB效劳器:

Tomcat

2.系统的需求分析

学生选课系统的主要满足来自三个方面的需求,这三个方面分别是学生用户,教师用户和管理员用户,也即是三类用户角色。

(1〕学生用户是主要的需求者,主要的需求功能是查询可选课程,查看自己的选课情况及进行选课。

(2〕教师用户主要需求功能是查看自己所教授的课程,课程有哪些学生选修,以及利用本系统提交学生的成绩

(3〕管理员用户的功能需求较为复杂,包括对学生的信息,教师的信息,课程的信息进行管理。

在学生信息管理子模块中实现对学生的信息的添加,修改,删除操作。

还可以输入查询条件进行查询操作。

在教室管理模块中实

现对教师信息的添加,修改删除,查询操作。

在课程管理的子模块中实现对课程的添加,修改,删除操作,查询操作。

本系统将管理员用户,教师用户,学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看,维护系统中的所有信息,如添加学生,添加课程,修改课程的信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程的成绩的权限;让学生拥有选课的权限。

系统用例图

 

3.系统的总体设计

 

二.管理员模块:

 

1.对老师的操作:

1〕增加老师

2〕根据教师号码修改教师信息

3〕根据教师号码删除教师信息

4〕根据教师号码查询教师的信息

5〕查询所有教师的信息

2.对学生的操作

1〕增加学生

2〕根据学号修改学生信息

3〕根据学号删除学生信息

4〕根据学号查询学生信息

5〕查询所有学生信息

3.对课程的操作

1〕增加课程

2〕根据课程号修改课程信息

3〕根据课程号删除课程的信息

4根据课程号查询课程的信息

5〕查询所有课程

二.学生模块

1.登录系统

2.选课〔只能选修学分小于等于8分的课程〕

3.查询所有已选的课

4.退可操作

5.查询自身信息

6.查询所有所选课程的成绩

7.退出系统

三.老师模块

1.登录系统

2.查询所有已选自带课程的学生信息

3.输入相应科目成绩

4.查询自身信息

四.系统的数据字典:

 

教师号T-teacher

字段名

字段类型

字段长度

是否为空

是否为主键

描述

tno

varcher

10

教师号

teacher

varcher

10

密码

pessword

tname

varcher

10

姓名

tsex

varcher

5

性别

dno

varcher

10

系别

cnumber

varcher

10

所带课程号

 

课程表t-course

字段名

字段类型

字段长度

是否为空

是否为主键

描述

cname

varcher

10

课程名

cno

varcher

10

课程号

csore

double

课程的学分

dno

varcher

10

课程的系别

 

成绩表t-score

字段名

字段类型

字段长度

是否为空

是否为主键

描述

cno

varcher

10

课程号

son

varcher

10

学号

score

varcher

10

成绩

学生表t-student

字段名

字段类型

字段长度

是否为空

是否为主键

描述

sno

varcher

10

学号

sname

varcher

10

姓名

ssex

varcher

5

性别

dno

varcher

10

系别

sage

int

年龄

spassword

varcher

10

密码

管理员t-manager

字段名

字段类型

字段长度

是否为空

是否为主键

描述

manager

varcher

10

账号

managerpassworvarcher

10

密码

d

系表

字段名

字段类型

字段长度

是否为空

是否为主键

描述

dno

varcher

10

系号

dname

varcher

10

系名

 

五.程序的局部代码:

1.管理员底层代码:

package;

 

importinterfaceManagerDao{

生模块底层代码:

package;

 

importinterfaceStudentDao{

师模块底层代码:

package;

 

importinterfaceTeacherDao{

界面的servlet代码如下:

package;

 

importclassmainextendsHttpServlet{

 

privatestaticfinallongserialVersionUID=1L;

 

@Override

protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

("utf-8");

("text/html;charset=utf-8");

PrintWriterout=();

Stringusername=("username");

Stringpassword=("password");

Stringyonghu=("yonghu");

if("student")){

("/studentcaozuo").forward(req,resp);

}elseif("teacher")){

("/teachercaozuo").forward(req,resp);

}elseif("manager")){

("/managercaozuo").forward(req,resp);

}

}

 

@Override

protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

(req,resp);

}

 

}

6.管理员界面的代码:

package;

 

importclassmanagercaozuoextendsHttpServlet{

privatestaticfinallongserialVersionUID=1L;

publicvoiddoGet(HttpServletRequestrequest,

response)

 

HttpServletResponse

 

throwsServletException,IOException{

(request,response);

}

 

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponse

response)

throwsServletException,IOException{

PrintWriterout=();

Stringusername=("username");

Stringpassword=("password");

managerm=newmanager(username,password);

ManagerDaoimplmipml=newManagerDaoimpl();

if(m)){

("").forward(request,response);

}else{

("/managerdengluerror").forward(request,response);

}

(username);

(password);

}

 

}

7.学生模块界面的代码:

package;

 

importclassstudentcaozuoextendsHttpServlet{

privatestaticfinallongserialVersionUID=1L;

 

public

 

void

 

doGet(HttpServletRequest

 

request,

 

HttpServletResponse

response)

throwsServletException,IOException{

(request,response);

}

 

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponse

response)

throwsServletException,IOException{

PrintWriterout=();

Stringsno=("username");

Stringspassword=("password");

StudentDaoimplsimpl=newStudentDaoimpl();

Stringsname=(sno);

HttpSessionsessionsno=();

HttpSessionsessionsname=();

 

("sno",sno);

("sname",sname);

if(sno,spassword)){

("student/").forward(request,response);

}else{

("/managerdengluerror").forward(request,response);

}

(sno);

(spassword);

}

 

}

8.老师界面的servlet代码:

package;

 

importclassteachercaozuoextendsHttpServlet{

 

privatestaticfinallongserialVersionUID=1L;

 

public

 

void

 

doGet(HttpServletRequest

 

request,

 

HttpServletResponse

response)

throwsServletException,IOException{

(request,response);

 

}

 

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponse

response)

throwsServletException,IOException{

PrintWriterout=();

Stringtno=("username");

Stringtpassword=("password");

TeacherDaoimpltimpl=newTeacherDaoimpl();

Stringtname=(tno);

if(tno,tpassword)){

("teacher/tname="+tname+"").forward(request,response);

}else{

("/managerdengluerror").forward(request,response);

}

(tno);

(tpassword);

 

();

();

}

}

六.数据库设计的代码:

 

师操作界面的局部截图:

 

3.管理员操作界面的局部截图:

 

七.总结:

熟练掌握了学生选课的相关业务逻辑,并且能够熟练掌握关于SSH的相关增删改查的操作。

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

当前位置:首页 > 小学教育 > 小学作文

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

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