jsp版学生成绩管理系统课程设计报告

  • 格式:docx
  • 大小:130.69 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《java语言程序设计》课程设计报告设计题目:学生成绩管理系统

班级:计算机四班学号:20104777

报告人姓名:蔺天震

指导老师:费老师

实验地点:东校区机房

完成起止日期:2010--2011学年第二学期16周

目录

一、引言 (2)

二、功能规划 (3)

1学生的需求 (3)

2老师的需求 (3)

3管理员的需求 (3)

三、具体设计 (4)

1、数据库设计: (4)

2、程序界面设计: (8)

3、servlet 设计: (12)

四、程序测试 (22)

1、测试项目 (22)

2、各模块的测试结果...................................

22

五、课程设计感想 (22)

六、总结 (23)

学生成绩管理系统设计报告

•、引言

1.1课程设计目的

(1)复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握;

(2)课程设计为我们提供了一个既动手又动脑,独立实践的机会,将课本上的理

论知识和实际有机的结合起来,锻炼我们的分析解决实际问题的能力,提高学生适应实际,实践编程的能力;

(3)培养我们在项目开发中团队合作精神,创新意识及能力。

1.2题目说明

一个学生成绩管理系统,能够实现对学生、老师基本信息、课程信息、成绩信息的管理。

学生端:能够实现查看自己的成绩、排名、选课信息等;

老师端:能够让老师查看学生的信息、查看学生的成绩、输入学生的成绩;管理员端:能够实现对学生和老师的综合管理,能查看所有的学生、老师的基本信息和课程信息,能够添加、修改老师学生的课程信息和密码等。

二、功能规划

1学生的需求

(1)在第一时间查询自己所有的成绩(自己的平时成绩、卷面成绩、总成绩)

(2)查询某一科成绩

(3)查询自己的上课信息及选课信息

(4)修改登录密码

2老师的需求

(1)查询某一学生的所有成绩(平均成绩,总成绩)

(2)查询某一学生某一科成绩,该科平均成绩,所在名次,最高成绩,最低成绩

(3)查询某一班级的成绩(所有成绩,某一学期的所有成绩,某一学期的某一科目的所有成绩)

(4)对某一科成绩进行统计(及格人数,及格率,不及格人数,不及格率,优秀人数,优秀率,某一分数段的人数)

(5)录入考试成绩和补考成绩(自己所教授的那一科成绩)

(6)查询自己的上课信息

(7)修改登录密码

3管理员的需求

(1)查询某一学生的所有成绩(平均成绩,总成绩)

(2)查询某一学生某一科成绩,该科平均成绩,所在名次,最高成绩,最低成绩

(3)查询某一班级的成绩(所有成绩,某一学期的所有成绩,某一学期的某一科目的所有成绩)

(4)对某一科成绩进行统计(及格人数,及格率,不及格人数,不及格率,优秀人数,优秀率,某一分数段的人数)

(5)录入成绩和修改成绩

(6)对学生和老师进行管理

(7)数据库管理

三、具体设计

本系统MVC三层模式进行开发,使模型,视图和控制分开,业务逻辑和显示分开,这样有利于错误的查找和系统的升级。

该系统适用于各个学校,其功能主要为:

成绩管理:用于对成绩的录入、修改、汇总、排名以及查询等操作。

数据库中共有老

id

name

师、学生、管理

22 b

员、课程、老师

课程信息、学生课程信息六张表, 分别如下:

课程信息:

系统框图:

登录

1、 查询自己的成绩

2、 查询课程表

3、 添加选课信息

管理员

1、 管理学生信息

2、 管理老师信息

3、 管理课程信息

4、 查看学生、老师信

1、数据库设计:

passport hrn _ 22

管理员信息:

学生课程信息:

ccuneic扣d te^d greiel砂2gnde credt ranKhg BBM1O01201 附77 111199S37845 201G4学生信息:S9774匚i

BBMU2&1C4/J t 11 H885941

id rams糊rd ttleje$pe:iaty'

20101111qq20101111m —

20104777ra201M777

201047872fll)4;87Wl韭技术

id jfflue ctlleje password

老师信息:

1111sii n i

22222222

老师课程信息:

lead cour^&Kl isfirwsh

mi BBDD40141

mi BB0010080

UH BB001D020

2222BBWIOO^1

连接数据库的类设计如下: packageDateBase;

import java.sql.Co nn ecti on;

import java.sql.DriverMa nager;

import java.sql.ResultSet;

import java.sql.SQLExceptio n;

import java.sql.Stateme nt;

public classDbUtile {

public Connectionconnection= null;

public ResultSetresultSet= null;

public Stateme ntstateme nt= n ull;

private String Db_Driver = "com.mysql.jdbc.Driver";

private String Db_url = "jdbc:mysql://localhost:3306/studentmanagesystem"; private String Db_user= "root";

private String Db_password= "sa";

public DbUtile() { //构造方法连接数据库

try{

Class.forName(Db_Driver);

conn ecti on =

DriverMa nager.getC onn ectio n( Db_url,Db_user,Db_password);

stateme nt= connection. createStateme nt(;

}

catch(java」an g.ClassNotF oun dExceptiore){

System.out.println「加载驱动器有错误:"+ e.getMessage(); } catch(SQLExcepti one) {

System.out.println("连接数据库有错误:"+ e.getMessage();

}

}

public int execute In sert(Stri ngsql) { 〃插入记录

int num = 0;

System.out.pri ntln( sql);

try {

num = stateme nt.executeUpdate(sql);

}

catch(SQLExceptio nex) {

System.out.println("执行插入有错误:"+ ex.getMessage(》;

}

return num;

public ResultSetexecuteQuery(Stringsql) { // 查询记录resultSet= nu II;

try{

resuItSet= stateme nt.executeQuery(sql);

}

catch(SQLExceptio nex) {