JSP程序设计教程大作业.docx

上传人:b****8 文档编号:10960583 上传时间:2023-02-24 格式:DOCX 页数:22 大小:351.59KB
下载 相关 举报
JSP程序设计教程大作业.docx_第1页
第1页 / 共22页
JSP程序设计教程大作业.docx_第2页
第2页 / 共22页
JSP程序设计教程大作业.docx_第3页
第3页 / 共22页
JSP程序设计教程大作业.docx_第4页
第4页 / 共22页
JSP程序设计教程大作业.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

JSP程序设计教程大作业.docx

《JSP程序设计教程大作业.docx》由会员分享,可在线阅读,更多相关《JSP程序设计教程大作业.docx(22页珍藏版)》请在冰豆网上搜索。

JSP程序设计教程大作业.docx

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%>

用户名:

密  码:

输入验证码

验证码

看不清

2.从数据库获取登陆名和密码

<%@pagecontentType="text/html;charset=gbk"import="java.sql.*"%>

<%@pageimport="java.io.*"%>

<%@pageimport="java.util.*"%>

<%@pageimport="java.sql.*"%>

学生成绩管理系统

<%!

Stringsql;

%>

<%

request.setCharacterEncoding("GBK");

Stringname=request.getParameter("name");

Stringpassword=request.getParameter("password");

StringdriverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver";

StringDBurl="jdbc:

sqlserver:

//127.0.0.1:

1433;DatabaseName=Studentmange";

StringDBname="lmj";

StringDBpassword="123456";

try{

Class.forName(driverClass);//加载驱动程序

Connectionconn=DriverManager.getConnection(DBurl,DBname,DBpassword);

sql="selectname,passwordfromTeacherwherename='"+name+"'andpassword='"+password+"'";

PreparedStatementpstmt=conn.prepareStatement(sql);//实例化数据库操作对象

ResultSetrs=pstmt.executeQuery();

if(rs.next())

{

response.sendRedirect("../admin.jsp");

}

else

{

response.sendRedirect("teacherindex2.jsp");

}

rs.close();

pstmt.close();

conn.close();

}

catch(Exceptione)

{

out.println(e);

}

%>

3.注册学生信息

<%@pagelanguage="java"contentType="text/html;charset=utf-8"

pageEncoding="utf-8"%>

<%@pageimport="java.sql.*"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http:

//www.w3.org/TR/html4/loose.dtd">

Inserttitlehere

填写学生信息

学号

姓名

性别

出生日期

籍贯

 

注册2

<%@pagelanguage="java"contentType="text/html;charset=utf-8"

pageEncoding="utf-8"%>

<%@pageimport="java.sql.*"%>

学生注册

<%

request.setCharacterEncoding("utf-8");

Stringsno=request.getParameter("sno");

inti=0;

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connectioncon=

DriverManager.getConnection("jdbc:

odbc:

2013db","","");

Statementstmt=con.createStatement();

Stringsql1="SELECT学号FROMStudent";

ResultSetrs=stmt.executeQuery(sql1);

while(rs.next())

{if(sno.equals(rs.getString("学号")))i++;

}

if(i!

=0){

%>该经学生已注册,请核对后重新输入!

<%}else{

 

StringName=request.getParameter("Name");

Stringsex=request.getParameter("sex");

Stringdate=request.getParameter("date");

Stringaddr=request.getParameter("addr");

展开阅读全文
相关搜索

当前位置:首页 > 高等教育 > 经济学

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

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