JSP程序设计教程大作业.docx
- 文档编号:10960583
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:22
- 大小:351.59KB
JSP程序设计教程大作业.docx
《JSP程序设计教程大作业.docx》由会员分享,可在线阅读,更多相关《JSP程序设计教程大作业.docx(22页珍藏版)》请在冰豆网上搜索。
JSP程序设计教程大作业
JSP程序设计教程大作业
学生信息管理
项目:
学生信息管理
学号:
班级:
姓名:
指导老师:
一.前言
1.背景
学生信息管理是一项繁琐的工作。
管理人员需要建立学生的学籍,汇总每学期没有拿到规定学分的学生,及这些学生的详细情况;学生完成一门课程的学习后,教师学要录入学生的考试成绩,计算平均成绩,汇总各分数段的人数;学生需要查询已结业的各门课程的成绩;班主任需要查询本班学生的学习情况,包括课程的平均成绩和每个学生的考试通过情况;还有学生的选课,选择修读的课程;学生的学费,以及学生考试后计算的绩点统计,这关系到学生最后能否能拿到学位证。
为此,设计一套实用的学生信息管理系统就可以大大简化管理人员、班主任和任课教师的工作,方便学生查询自己的学习情况。
2.目的
希望能做出一个学生信息管理的系统,实现分类别的管理。
能实现管理员、教师和学生三种身份的登录,同时也能实现各登陆身份的相关操作。
3.项目范围
系统名称:
学生信息管理系统
本系统主要功能是实现学校学生的信息管理、课程管理、成绩管理、以及使用该系统的用户管理。
4.开发工具
开发工具:
MyEclipeSQLServer2008
二.系统需求
1.需求分析
学生信息管理系统是对学生的基本信息和成绩信息进行管理,主要包括添加、修改和删除学生的基本信息及课程的基本信息;录入、修改和删除学生的成绩信息,对基本信息、成绩信息进行查询、排序及统计等操作,从而实现学生信息管理的自动化与计算机化。
本课题将实现一个简化的学生信息管理系统。
2.使用流程图
IE等浏览器
用户浏览器web服务器
Tomcat
返回操作结果
使用数据库操作语言
返回查询结果
操作请求
SQL数据库
3.用户需求
(1)..有关信息的输入,包括输入学生基本信息、所在院系、所学专业、所在班级、所学课程和成绩等。
(2).学生信息的查询,包括查询学生基本信息、所在班级、课程、学生成绩
(3)学生信息的修改,包括增加、删除等。
(5)课程信息的设置和查询等。
(6)课程信息的修改,包括增加,删除等。
(7)管理员对各种学生信息的增加,删除等。
三.系统设计
1.系统模块
1.登入模块
用户登陆(学生登陆,教师登陆,管理员登陆)
2.学生信息管理
此模块由学生基本信息、系别信息、班级信息、成绩信息等组成。
3.课程管理
此模块由课程信息。
4.成绩管理
此模块由成绩信息和绩点信息组成。
5.管理员管理
此模块由管理员信息组成
6.退出
2.登陆流程图
用户
教师
判断密码与权限
学生
系统管理员
学生信息管理系统
3.ER图
.成绩管理ER图
姓名
年级
教学
成绩
工号
职务
教师
学时
籍贯
性别
学号
姓名
学生
学分
编号
课名称
课程
4.数据库的设计
(1)、学生表student(见下表):
保存学生的基本信息,包括学生的姓名,登录系统时的密码,学生的学号,出生年月以及性别等。
(2)、教师表teacher(见下表):
保存教师的信息,包括教师的教师编号,
登录系统系统时的用户名和密码等。
(3)、成绩表score(见下表):
保存有关学生的成绩的一些信息,本系统主要是对于该表的操作。
(4)、课程表course(见下表):
保存有关学生的课程的一些信息。
(5)、管理员表(见下表):
保存管理员的信息。
建表语句:
1.建立数据库
CreatedatabaseStudent
2.建立学生表
CREATETABLE[dbo].[Student](
[学号][varchar](110)NOTNULL,
[姓名][varchar](24)NOTNULL,
[性别][char]
(2)NULL,
[出生日期][datetime]NOTNULL,
[籍贯][varchar](24)NULL,
CONSTRAINT[PK__Student__1CC396D2108B795B]PRIMARYKEYCLUSTERED
(
[学号]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
ALTERTABLE[dbo].[Student]WITHCHECKADDCONSTRAINT[CK__Student__性别__1273C1CD]CHECK(([性别]='女'OR[性别]='男'))
GO
ALTERTABLE[dbo].[Student]CHECKCONSTRAINT[CK__Student__性别__1273C1CD]
GO
3.建立教师表
CREATETABLE[dbo].[teacher](
[工号][varchar](12)NOTNULL,
[姓名][varchar](24)NOTNULL,
[登陆密码][varchar](24)NOTNULL,
[课程号][varchar](12)NULL,
PRIMARYKEYCLUSTERED
(
[工号]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
4.建立课程表
CREATETABLE[dbo].[course](
[课程号][varchar](12)NOTNULL,
[课程名][varchar](24)NOTNULL,
[分数][varchar](4)NOTNULL,
PRIMARYKEYCLUSTERED
(
[课程号]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
5.建立成绩表和视图约束
CREATETABLE[dbo].[score1](
[学号][varchar](110)NOTNULL,
[课程号][varchar](12)NOTNULL,
[班级][varchar](24)NOTNULL,
[学期][varchar](24)NOTNULL,
[成绩][int]NULL,
[学分][int]NULL,
CONSTRAINT[PK__score1__77CFF86F3C69FB99]PRIMARYKEYCLUSTERED
(
[学号]ASC,
[课程号]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
SETANSI_PADDINGOFF
GO
ALTERTABLE[dbo].[score1]WITHCHECKADDCONSTRAINT[FK__score1__课程号__403A8C7D]FOREIGNKEY([课程号])
REFERENCES[dbo].[course]([课程号])
GO
ALTERTABLE[dbo].[score1]CHECKCONSTRAINT[FK__score1__课程号__403A8C7D]
GO
ALTERTABLE[dbo].[score1]WITHCHECKADDCONSTRAINT[FK__score1__学号__3F466844]FOREIGNKEY([学号])
REFERENCES[dbo].[Student]([学号])
GO
ALTERTABLE[dbo].[score1]CHECKCONSTRAINT[FK__score1__学号__3F466844]
GO
ALTERTABLE[dbo].[score1]WITHCHECKADDCONSTRAINT[CK__score1__成绩__3E52440B]CHECK(([成绩]>=(0)AND[成绩]<=(100)))
GO
ALTERTABLE[dbo].[score1]CHECKCONSTRAINT[CK__score1__成绩__3E52440B]
GO
6.建立管理员表
CREATETABLE[dbo].[manage](
[管理员编号][varchar](12)NOTNULL,
[姓名][varchar](24)NOTNULL,
[登陆密码][varchar](24)NOTNULL,
PRIMARYKEYCLUSTERED
(
[管理员编号]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY],
UNIQUENONCLUSTERED
(
[姓名]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
GO
四.系统部分代码
1.登陆
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.util.Date,java.text.*"%>
--导入用到的类包文件-->
<%
Datenowday=newDate();//获取当前日期
inthour=nowday.getHours();//获取日期中的小时
SimpleDateFormatformat=newSimpleDateFormat("yyyy-MM-ddHH:
mm:
ss");//定义日期格式化对象
Stringtime=format.format(nowday);//将指定日期格式化为"yy-MM-ddHH:
mm:
ss"形式
%>
'宋体';font-size: xx-large;color: yellow;">学生信息管理系统
varcode;//在全局定义验证码
functioncreateCode(){
code="";
varcodeLength=4;//验证码的长度
varcheckCode=document.getElementById("checkCode");
checkCode.value="";
varselectChar=newArray(2,3,4,5,6,7,8,9,'A','B','C','D',
'E','F','G','H','J','K','L','M','N','P','Q','R',
'S','T','U','V','W','X','Y','Z');
for(vari=0;i varcharIndex=Math.floor(Math.random()*32); code+=selectChar[charIndex]; } if(code.length! =codeLength){ createCode(); } checkCode.value=code; } functionvalidate(){ varinputCode=document.getElementById("input1").value.toUpperCase(); if(inputCode.length<=0){ alert("请输入验证码! "); returnfalse; }elseif(inputCode! =code){ alert("验证码输入错误! "); createCode(); returnfalse; }else{ returntrue; } } <%=time%> 用户名:
密 码:
输入验证码
验证码