基于JSP设计的教务系统中的学生信息管理系统课程报告Word文档下载推荐.docx
《基于JSP设计的教务系统中的学生信息管理系统课程报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于JSP设计的教务系统中的学生信息管理系统课程报告Word文档下载推荐.docx(65页珍藏版)》请在冰点文库上搜索。
varchar(5)
date
出生日期
class
班级
minzu
民族
varchar(6)
phone
联系方式
zzmm
政治面貌
varchar(10)
address
家庭住址
varchar(40)
zhuanye
专业
3、程序功能说明与程序设计流程图
3.1登录
登录部分涉及的jsp文件:
Denglu.jsp、Denglu2.jsp,success.jsp:
Denglu.jsp通过定义两个文本框:
name="
logname"
,name="
password"
获取用户输入的用户名和密码并把值传递给Denglu2.jsp
Denglu2.jsp把传递过来的用户名和密码存放在Stringlogname1
、Stringpassword1中,连接数据库通过遍历mytable表中的数据,对比两次,第一次对比用户名,第二次对比用户名和密码,同时定义两个int型变量,用户名正确则n=1,用户名和密码同时正确则m=1,再判断n与m的值,当n=1&
&
m=1正确登录,n=1&
m!
=1提示密码错误,n!
=1提示用户名不存在。
Success.jsp登录已成功,能够显示登录的用户名,显示出功能选项。
N
Y
3.2查看学生信息
涉及文件inquire.jsp,SortTag.tag
用户通过点击学生信息管理页面上方的功能选项跳转到inquire.jsp.该文件负责把学生信息表中的数据通过调用SortTag.tag按学号进行排序然后输出学生信息记录。
按学号排序查询语句:
SELECT*FORMstudentORDERBYnumber
3.3查询学生信息
涉及文件:
chaxun.jsp,bynumber.jsp,byclass.jsp,byname.jsp,NumberConditon.tag,ClassConditon.tag,KeyWord.tag
用户通过点击学生信息管理页面上方的查询学生信息功能选项跳转到chaxun.jsp,该界面为用户提供三种查询方式,页面有三个文本框用户可以输入学号,班级号或姓名进行查询。
当用户选择根据学号查询bynumber.jsp通过Stringnumber=request.getParameter("
number"
);
获取学号再调用NumberConditon.tag进行查询,查询语句:
SELECT*FORMstudentWherenumber='
"
+number+"
'
;
当用户选择根据学号查询byclass.jsp通过Stringnumber=request.getParameter("
SELECT*FORMstudentWhereclass='
+banji+"
当用户选择根据姓名查询时跳转到KeyWord.tag,该查询是模糊查询,查询语句:
Stringcondition="
SELECT*FROMstudentWhere"
+ziduan+"
like'
%"
+keyWord+"
%'
3.4修改学生信息
update1.jsp,update2.jsp,update3.jsp,newResult.jsp,NewRecord.tag
其中update1.jsp,update2.jsp,update3.依次负责接收用户输入的学号通过查询学生表中number字段的记录,如果有跳转到newResult.jsp,否则提示学生号不存在返回update1.jsp。
newResult.jsp接收到number的值通过调用NewRecord.tag更改相应的学生信息记录,更改成功后会向用户返回该条记录以供查看,更改语句为:
Stringcondition1="
UPDATEstudentSETname='
+name+"
WHEREnumber="
+"
+number+"
3.5添加学生信息
newrecord.jsp,newDatabase.jsp,AddRecord.tag
Newrecord.jsp页面有相应的文本框接收用户输入的信息,把信息传递给newDatabase.jsp,newDatabase.jsp接收传递过来的信息调用AddRecord.tag
把记录添加到student表中,添加成功后显示添加的记录信息,添加语句:
Stringcondition="
INSERTINTOstudentVALUES"
+
"
("
+"
'
+name+"
+sex+"
+date+"
+clas+"
+minzu+"
+phone+"
+zzmm+"
'
+address+"
+zhuanye+"
)"
3.6删除学生信息
涉及文件:
newdelete.jsp,delete.jsp,delete2.jsp,delete3.jsp,DelRecord.tag
Newdelete.jsp页面显示一种按学号删除,另外两个分别为删除最近一次修改的学生信息记录和删除最近一次添加的学生信息记录,分别对应跳转到delete.jsp,delete2.jsp,delete3.jsp
delete.jsp接收传递过来的number的值调用DelRecord.tag删除student表中相应的记录并提示删除成功
delete2.jsp与delete3.jsp通过session对象分别记录了最近一次修改与添加的记录的number的值,直接通过Stringnum=(String)session.getAttribute("
);
和<
%Stringnum=(String)session.getAttribute("
number3"
获得number的值让后调用DelRecord.tag删除student表中相应的记录并提示删除成功。
删除语句:
Stringcondition="
DELETEFROMstudentWHEREnumber='
4、运行效果图
4.1数据里的mytabale表,student表
4.2登录界面
4.3输入不存在的用户名
4.4输入的密码错误
4.5用户admin登录时
4.6改用户wxy登录时
4.7查看学生信息
4.8查询学生信息,三种查询方式
4.9修改学生信息输入不存在学号
4.10输入正确学号
4.11修改成功显示修改后的记录
4.12查看学生信息,记录已修改
4.13添加学生信息记录
4.14信息添加成功,显示添加的记录
4.15查看学生信息,信息已添加
4.16删除学生信息
4.17通过快键删除,删除最近一次修改的记录,删除最近一次添加的记录
4.18查看学生表信息已正确删除
4.19返回首页并注销
5、代码
Head.txt
<
%@pagecontentType="
text/html;
charset=gb2312"
%>
tablecellSpacing="
1"
cellPadding="
width="
80%"
align="
center"
border="
>
trvalign="
bottom"
td>
ahref="
inquire.jsp"
fontSize=3>
查看学生信息<
/font>
/a>
/td>
chaxun.jsp"
查询学生信息<
update1.jsp"
修改学生信息<
newrecord.jsp"
添加学生信息<
newdelete.jsp"
删除学生信息<
/tr>
/table>
Denglu.jsp
%@pagelanguage="
java"
contentType="
charset=GB2312"
pageEncoding="
GB2312"
html>
head>
metahttp-equiv="
Content-Type"
content="
charset=gb2312"
title>
Inserttitlehere<
/title>
center>
fontcolor=bluesize=20>
b>
学生信息管理<
/b>
/center>
/head>
bodybackground="
1.jpg"
formaction="
Denglu2.jsp"
method=postname=form>
br>
table>
tr>
用户名:
Inputtype=textname="
登陆密码:
Inputtype=passwordname="
pre>
Inputtype="
submit"
value="
登陆"
name="
<
reset"
重置"
/pre>
/form>
/body>
/html>
Denglu2.jsp
%@pageimport="
java.sql.*"
%>
fontsize=3>
%intn=0,m=0;
Stringlogname1=request.getParameter("
Stringpassword1=request.getParameter("
Connectioncon;
Statementsql;
ResultSetrs;
try{Class.forName("
com.mysql.jdbc.Driver"
}
catch(Exceptione){}
try{Stringuri="
jdbc:
mysql:
//127.0.0.1/mydatabase"
Stringuser="
root"
Stringpassword="
123456"
con=DriverManager.getConnection(uri,user,password);
sql=con.createStatement();
rs=sql.executeQuery("
SELECT*FROMmytable"
while(rs.next()){
StringSQLName=rs.getString("
username"
StringSQLPassw=rs.getString("
if(pareTo(SQLName)==0)
{
n=1;
if(pareTo(SQLName)==0&
pareTo(SQLPassw)==0)
m=1;
break;
}
}
con.close();
}
catch(SQLExceptione)
{
out.print(e);
if(n==1&
m==1)
{
session.setAttribute("
admin"
logname1);
<
jsp:
forwardpage="
success.jsp"
/>
%
elseif(n==1&
m!
=1)
out.println("
密码错误!
);
}
else{
用户名不存在!
Denglu.jsp"
返回登录"
Success.jsp
%Stringa=(String)session.getAttribute("
用户名:
%=a%>
状态:
在线<
注销"
includepage="
head.txt"
/>
Inquire.jsp
%@pagecontentType="
charset=GB2312"
%@taglibtagdir="
/WEB-INF/tags"
prefix="
inquire"
HTML>
学生信息管理首页"
Bodybackground="
Fontsize=3>
%StringorderType="
inquire:
SortTagorderType="
%=orderType%>
学生信息记录:
%=orderResult%>
/Font>
/BODY>
/HTML>
Chaxun.jsp
strong>
查询方式三选一:
/strong>
bynumber.jsp"
Method="
post"
根据学号查询:
Inputtype=textname="
Inputtype=submitname="
g"
value="
确认查询"
/Form>
FORMaction="
byclass.jsp"
根据班级查询:
class"
byname.jsp"
BR>
根据姓名查询:
name"
Bynumber.jsp
Fontsize=2>
%Stringnumber=request.getParameter("
if(number==null)
number="
byte[]bb=number.getBytes("
iso-8859-1"
number=newString(bb);
NumberConditonnumber="
%=number%>
根据学号<
查询到的记录:
%=queryResultByNumber%>
返回"
Byclass.jsp
inquire1"
/