jsp版学生成绩管理系统课程设计报告Word文档下载推荐.docx
- 文档编号:16755386
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:25
- 大小:559.20KB
jsp版学生成绩管理系统课程设计报告Word文档下载推荐.docx
《jsp版学生成绩管理系统课程设计报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《jsp版学生成绩管理系统课程设计报告Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。
管理员端:
能够实现对学生和老师的综合管理,能查看所有的学生、老师的基本信息和课程信息,能够添加、修改老师学生的课程信息和密码等。
二、功能规划
1学生的需求
(1)在第一时间查询自己所有的成绩(自己的平时成绩、卷面成绩、总成绩)
(2)查询某一科成绩
(3)查询自己的上课信息及选课信息
(4)修改登录密码
2老师的需求
(1)查询某一学生的所有成绩(平均成绩,总成绩)
(2)查询某一学生某一科成绩,该科平均成绩,所在名次,最高成绩,最低成绩
(3)查询某一班级的成绩(所有成绩,某一学期的所有成绩,某一学期的某一科目的所有成绩)
(4)对某一科成绩进行统计(及格人数,及格率,不及格人数,不及格率,优秀人数,优秀率,某一分数段的人数)
(5)录入考试成绩和补考成绩(自己所教授的那一科成绩)
(6)查询自己的上课信息
(7)修改登录密码
3管理员的需求
(1)查询某一学生的所有成绩(平均成绩,总成绩)
(2)查询某一学生某一科成绩,该科平均成绩,所在名次,最高成绩,最低成绩
(3)查询某一班级的成绩(所有成绩,某一学期的所有成绩,某一学期的某一科目的所有成绩)
(5)录入成绩和修改成绩
(6)对学生和老师进行管理
(7)数据库管理
三、具体设计
本系统MVC三层模式进行开发,使模型,视图和控制分开,业务逻辑和显示分开,这样有利于错误的查找和系统的升级。
该系统适用于各个学校,其功能主要为:
成绩管理:
用于对成绩的录入、修改、汇总、排名以及查询等操作。
系统框图:
1、数据库设计:
数据库中共有老师、学生、管理员、课程、老师课程信息、学生课程信息六张表,
分别如下:
学生信息:
老师信息:
老师课程信息:
连接数据库的类设计如下:
packageDateBase;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
publicclassDbUtile{
publicConnectionconnection=null;
publicResultSetresultSet=null;
publicStatementstatement=null;
privateStringDb_Driver="
com.mysql.jdbc.Driver"
;
privateStringDb_url="
jdbc:
mysql:
//localhost:
3306/studentmanagesystem"
privateStringDb_user="
root"
privateStringDb_password="
sa"
publicDbUtile(){//构造方法连接数据库
try{
Class.forName(Db_Driver);
connection=DriverManager.getConnection(Db_url,Db_user,Db_password);
statement=connection.createStatement();
}
catch(java.lang.ClassNotFoundExceptione){
System.out.println("
加载驱动器有错误:
"
+e.getMessage());
catch(SQLExceptione){
连接数据库有错误:
}
}
publicintexecuteInsert(Stringsql){//插入记录
intnum=0;
System.out.println(sql);
try{
num=statement.executeUpdate(sql);
}
catch(SQLExceptionex){
System.out.println("
执行插入有错误:
+ex.getMessage());
}
returnnum;
publicResultSetexecuteQuery(Stringsql){//查询记录
resultSet=null;
resultSet=statement.executeQuery(sql);
执行查询有错误:
}
returnresultSet;
publicintexecuteDelete(Stringsql){//删除记录
num=statement.executeUpdate(sql);
catch(SQLExceptionex){
执行删除有错误:
publicintexecuteUpdate(Stringsql){//更改记录
num=statement.executeUpdate(sql);
执行修改有错误:
publicvoidclose(){//关闭Connection对象
if(resultSet!
=null)
resultSet.close();
statement.close();
connection.close();
catch(Exceptionend){
执行关闭Connection对象有错误:
+end.getMessage());
}
}
2、程序界面设计:
通过程序的要求可知该程序有jsp页面或Html页面以及servlet组成。
Jsp主要负责与用户的交互实现视图页面的功能,而servlet主要负责页面跳转控制以及数据处理的功能。
由实验的要求具体的实验设计如下:
A、用户通过一个登陆页面,输入用户名、密码,然后该jsp页面将请求发送给处理用户身份验证的servlet,该servlet获取数据库的信息进行校验,如果用户的身份合法则跳转到应用程序的主界面,否则给出错误的提示信息,并且要求用户重新输入用户名和密码重新登陆。
登陆页面的设计图如下所示:
B、对于程序的主界面主要实现对于用户需要的导航功能以及实现具体的操作功能。
该程序的主界面主要有三个Html的Framset构成,分别为topFrame,leftFrame,mainFrame组成,leftFrame主要实现程序的导航,而mainFrame具体的实现程序的功能。
主界面设计界面如下:
老师登录成功界面
学生登录成功界面
管理员登录成功界面:
C、具体的功能设计如下:
1、学生的功能:
(1)、查询个人成绩
(2)、查询课程:
(3)、修改密码
2、老师的功能:
(1)、查询学生成绩:
(2)、录入学生成绩;
(3)、查看课程信息:
3、管理员功能:
(1)、老师信息管理:
(2)、学生信息管理;
(3)、课程信息管理:
3、servlet设计:
因为本程序应用的servlet较多,所以这里只简单介绍几个
(1)、LoginServlet登录控制
packageservlet;
importjava.io.IOException;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importjavax.servlet.http.HttpSession;
importDAO.ManageDAO;
importDAO.StudentDAO;
importDAO.TeacherDAO;
importDAOImpl.ManageDAOImpl;
importDAOImpl.StudentDAOImpl;
importDAOImpl.TeacherDAOImpl;
importDate.Manage;
importDate.Student;
importDate.Teacher;
publicclassLoginServletextendsHttpServlet{
publicLoginServlet(){
super();
publicvoiddestroy(){
super.destroy();
//Justputs"
destroy"
stringinlog
//Putyourcodehere
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
request.setCharacterEncoding("
utf-8"
);
response.setContentType("
text/html"
);
intn=Integer.parseInt(request.getParameter("
n"
));
Stringid=request.getParameter("
id"
Stringpassword=request.getParameter("
password"
booleanb=false;
if(n==1){
StudentDAOsd=newStudentDAOImpl();
b=sd.login(id,password);
if(b){
HttpSessionsession=request.getSession();
session.setAttribute("
id);
identity"
"
1"
Studentstu=sd.queryByID(id);
stu"
stu);
response.sendRedirect("
main.html"
}else
error.jsp"
}elseif(n==2){
TeacherDAOtd=newTeacherDAOImpl();
b=td.login(id,password);
2"
Teachertea=td.queryByID(id);
tea"
tea);
tea_main.html"
}else
}else{
ManageDAOtd=newManageDAOImpl();
3"
Manageman=td.queryByID(id);
man"
man);
man_main.html"
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
doGet(request,response);
publicvoidinit()throwsServletException{
}
(2)、InsertServlet输入学生成绩
importjava.io.PrintWriter;
importjava.util.Vector;
publicclassInputServletextendsHttpServlet{
publicInputServlet(){
HttpSessionsession=request.getSession();
Stringcourseid=request.getParameter("
courseid"
Stringid=(String)session.getAttribute("
intn=Integer.parseInt((String)session.getAttribute("
len"
Stringgrade1;
Stringgrade2;
Stringgrade;
TeacherDAOtd=newTeacherDAOImpl();
for(inti=0;
i<
n;
i++){
grade1=request.getParameter("
grade1"
+(i+1));
grade2=request.getParameter("
grade2"
grade=request.getParameter("
grade"
Stringstuid=request.getParameter("
stuid"
td.inputGrade(grade1,grade2,courseid,stuid,grade);
td.ranking(courseid,id);
td.changeFinish(id,courseid);
this.getServletConfig().getServletContext().getRequestDispatcher("
/input_success.html"
).forward(request,response);
(3)、DeleteServlet删除控制
publicclassDelectServletextendsHttpServlet{
privatestaticfinallongserialVersionUID=1L;
publicDelectServlet(){
doPost(request,response);
Stringparameter=request.getParameter("
parameter"
if(parameter.equals("
)){
St
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- jsp 学生 成绩管理系统 课程设计 报告