文档库 最新最全的文档下载
当前位置:文档库 › javaweb学生信息管理系统

javaweb学生信息管理系统

java web学生信息管理系统

本文由刘千飞贡献

Web 程序设计
—学生信息管理系统

姓名:鲁超、刘千飞、肖伟超 万联播、张明明、白浩 班级: 软件 0901 时间:2011/12/22

一、实验目的 熟练运用 web 开发技术设计完成一个学生信息管理系 统。 二、实验原理 功能要求: 基于 B/S 架构实现学生信息的增\删\改\查\展示功能,实 现完整的应用构建和界面设计。 技术要求: 基于 mysql 或 mssqlserver 数据库,以 Tomcat 为应用服务 器 , 可 使 用 Jsp+Servelt+Javabean 完 成 , 鼓 励 使 用 struts,Hibernate 框架完成设计。 三、实验分组 成员姓名 鲁超 刘千飞 肖伟超 万联播 张明明 白浩 四、实验内容 实验内容 成员学号 负责内容

200907040101 删除模块 200907040102 登陆页面及参与总体内容设计 200907040103 修改模块 200907040104 查询模块 200907040105 分页及参与总体内容的设计 200907040107 增加模块

登陆主页源代码: 登陆主页源代码: login.html: :
登陆模块

欢迎登陆学生信息管理系统


用户名:
密码:



forward.jsp: :
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>

login forward <% String username=null; String password=null; request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312"); username=request.getParameter("username"); password=request.getParameter("password"); if(!username.equals("")&&!password.equals("")) { %> <% } else { %>

<% } %>

login_ok.jsp: :
<%@ page language="java" c
ontentType="text/html; charset=gb2312" pageEncoding="gb2312"%>

Insert title here

欢迎您使用学生管理系统


<% String username=null; String password=null; request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312"); username=request.getParameter("username"); password=request.getParameter("password"); out.println("登陆成功,用户名["+username+"],"); out.println("密码["+password+"]"); %>

请选择您要进行的操作:



除">

改">

加">

error.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%> Error

欢迎您使用学生管理系统

<% String username=null; String password=null; request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312"); username=request.getParameter("username"); password=request.getParameter("password"); out.println("您输入的用户名["+username+"],"); out.println("和密码["+password+"]有一项为空,请 重新输入:"); %> ---返回重新登陆---

学生信息增加模块: 学生信息增加模块: p_zeng.html: :
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>

Insert title here

欢迎您使用学生管理系统


<% String username=null; String password=null; request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312"); username=request.getPar

ameter("username"); password=request.getParameter("password"); out.println("登陆成功,用户名[or='red'>"+username+"],"); out.println("密码["+password+"]"); %>

请选择您要进行的操作:

除">

改">

加">

zeng.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" import="java.sql.*"%> call stored procedure <% int PAGESIZE=3; int pageCount=0; int curPage=1; java.sql.Connection conn=null; PreparedStatement pstmt=null; Statement stmt=null; ResultSet rs=null; String[] cloStr={"sno","sname","cclass","sex","age","nation","clname","place"} ; String[] showStr={"学生编号","学生姓名","所在年级","性别","年龄","民族","专 业","住址"}; String sno,sname,cclass,sex,age,nation,clname,place; String strURL="jdbc:mysql://localhost/test"; String strDBUser="root"; String strDBPwd="123"; try { Class.forName("com.mysql.jdbc.Driver"); conn=java.sql.DriverManager.getConnection(strURL,strDBUser,strDBPwd); } catch(ClassNotFoundException e) { e.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } catch(Exception ex) { ex.printStackTrace();

out.println("您输入的信息有误,请查证后再重新输入!"); }

try{ sno=request.getParameter("sno"); byte no[]=sno.getBytes("ISO-8859-1"); sno=new String(no); sname=request.getParameter("sname"); byte name[]=sname.getBytes("ISO-8859-1"); sname=new String(name,"gb2312");

cclass=request.getParameter("cclass"); byte clss[]=cclass.getBytes("ISO-8859-1"); cclass=new String(clss,"gb2312");

sex=request.getParameter("sex"); byte ex[]=sex.getBytes("ISO-8859-1"); sex=new String(ex,"gb2312");

age=request.getParameter("age"); byte ge[]=age.getBytes("ISO-8859-1"); age=new String(ge);

nation=request.getParameter("nation"); byte tion[]=nation.getBytes("ISO-8859-1"); nation=new String(tion,"gb2312"); clname=request.getParameter("clname"); byte cname[]=clname.getBytes("ISO-8859-1"); clname=new String(cname,"gb2312");

place=request.getParameter("place"); byte lace[]=place.getBytes("ISO-8859-1"); place=new String(lace,"gb2312"); String sqlll="insert into S(sno,sname,cclass,sex,age,nation,clname,place)

values('"+sno+"','"+sname+"','"+cclass+"','"+sex+"','"+age+"','"+nati on+"','"+clname+"','"+place+"')"; pstmt

=conn.prepareStatement(sqlll); int count3=pstmt.executeUpdate();//插入

String sqllll="select * from S"; stmt=conn.createStatement(Resu
ltSet.TYPE_FORWARD_ONLY,ResultSet.CONCU R_READ_ONLY); rs=stmt.executeQuery(sqllll); https://www.wendangku.net/doc/6716634815.html,st(); int size=rs.getRow(); pageCount=(size%PAGESIZE==0)?(size/PAGESIZE):(size/PAGESIZE+1); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } //获取想要显示的页数: String integer=request.getParameter("curPage"); if(integer==null) { integer="1"; } try { curPage=Integer.parseInt(integer); } catch(NumberFormatException e) {curPage=1; } if(curPage<=1) { curPage=1; } if(curPage>=pageCount) { curPage=pageCount; }

//如果要显示第curPage页,那么游标应移到posion的值是: int posion=(curPage-1)*PAGESIZE+1; rs.absolute(posion); // 设置游标的位置 %>

<% for(int i=0;i"); out.println("
"+showStr[i]+"
"); } %>
<% int count=0; do{ if(count>=PAGESIZE) break; out.println(""); for(int i=0;i"); out.println("
"+rs.getString(cloStr[i])+"
"); } out.println("
"); count++; }while(rs.next()); %>
首页 上一页 下一页 尾页 第<%=curPage%>页/共<%=pageCount%>页 输入页码数
size=4>

学生信息删除模块: 学生信息删除模块: 删除模块 p_shan.html:
Insert title here

欢迎您使用学生管理系统


删 除 操 作

请输入学生学号:
请输入学生姓名:
请输入学生性别:


>

请输入学生住址: nput type="submit" name="su" value="按地址删除">



①按学号删除: 学号删除 Shan_xuehao.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" import="java.sql.*"%> call stored procedure <% int PAGESIZE=3; int pageCount=0; int curPage=1; java.sql.Connection conn=null; PreparedStatement pstmt=null; Statement stmt=null; ResultSet rs=null; String[] cloStr={"sno","sname","cclass","sex","age","nation","clname","place"} ; String[] showStr={"学生编号","学生姓名","所在年级","性别","年龄","民族","专

业","住址"}; String sno; if(conn==null) { String strURL="jdbc:mysql://localhost/test"; String strDBUser="root"; String strDBPwd="123"; try { Class.forName("com.mysql.jdbc.Driver"); out.println("连接数据库成功......"); conn=java.sql.DriverManager.getConnection(strURL,strDBUser,strDBPwd); } catch(ClassNotFoundException e) { e.printStackTrace(); out.println("ClassNotFoundException111"); } catch(Exception ex) { ex.printStackTrace(); out.println("Exception11"); } } try{ sno=request.getParameter("sno"); byte no[]=sno.getBytes("ISO-8859-1"); sno=new String(no); String sql="delete from S where sno="+sno; pstmt=conn.prepareStatement(sql); int count=pstmt.executeUpdate();//删除 String sqllll="select * from S"; stmt=conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.C ONCUR_READ_ONLY); rs=stmt.executeQuery(sqllll); https://www.wendangku.net/doc/6716634815.html,st(); int size=rs.getRow();

pageCount=(size%PAGESIZE==0)?(size/PAGESIZE):(size/PAGESIZE+1); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } //获取想要显示的页数: String integer=request.getParameter("curPage"); if(integer==null) { integer="1"; } try { curPage=Integer.parseInt(integer); } catch(NumberFormatException e) {curPage=1; } if(curPage<=1) { curPage=1; } if(curPage>=pageCount) { curPage=pageCount; } //如果要显示第curPage页,那么游标应移到posion的值是: int posion=(curPage-1)*PAGESIZE+1; rs.absolute(posion); // 设置游标的位置 %>

<% for(int i=0;i"); out.println("
"+showStr[i]+"
"); }

%>
<% int count=0; do{ if(count>=PAGESIZE) break; out.println(""); for(int i=0;i"); out.println("
"+rs.getString(cloS

tr[i])+"

"); } out.println("
"); count++; }while(rs.next()); %>
首页 上一页 下一页 尾页 第<%=curPage%>页/共<%=pageCount%>页
输入页码数
size=4>

②其中按姓名(shan_xuehao.jsp)、按性别 其中按姓名 、 (shan_xingbie.jsp)、按地址(shan_dizhi.jsp)删除基本同 、按地址 删除基本同 上,此处代码省略。 此处代码省略。

学生信息修改模块: 学生信息修改模块: 修改模块 p_gai.html:


Insert title here

欢迎您使用学生管理系统


修 改 操 作

请输入要修改的学生学号:
请输入新的学生信息:
学号: 姓名: 年级: 性别: 年龄: 名族: 专业: 地址:



gai.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" import="java.sql.*"%> call stored procedure <% java.sql.Connection conn=null; PreparedStatement pstmt=null; Statement stmt=null; ResultSet rs=null; String[] cloStr={"sno","sname","cclass","sex","age","nation","clname","place"} ; String[] showStr={"学生编号","学生姓名","所在年级","性别","年龄","民族","专 业","住址"}; String sno,sname,cclass,sex,age,nation,clname,place; String strURL="jdbc:mysql://localhost/test"; String strDBUser="root"; String

strDBPwd="123"; try { Class.forName("com.mysql.jdbc.Driver"); conn=java.sql.DriverManager.getConnection(strURL,strDBUser,strDBPwd); } catch(ClassNotFoundException e)
{ e.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); }

try{ sno=request.getParameter("sno"); byte no[]=sno.getBytes("ISO-8859-1"); sno=new String(no); sname=request.getParameter("sname"); byte name[]=sname.getBytes("ISO-8859-1"); sname=new String(name,"gb2312");

cclass=request.getParameter("cclass"); byte clss[]=cclass.getBytes("ISO-8859-1"); cclass=new String(clss,"gb2312");

sex=request.getParameter("sex"); byte ex[]=sex.getBytes("ISO-8859-1"); sex=new String(ex,"gb2312");

age=request.getParameter("age"); byte ge[]=age.getBytes("ISO-8859-1"); age=new String(ge);

nation=request.getParameter("nation"); byte tion[]=nation.getBytes("ISO-8859-1"); nation=new String(tion,"gb2312"); clname=request.getParameter("clname"); byte cname[]=clname.getBytes("ISO-8859-1"); clname=new String(cname,"gb2312");

place=request.getParameter("place"); byte lace[]=place.getBytes("ISO-8859-1"); place=new String(lace,"gb2312"); String sql="update S set

sname='"+sname+"',cclass='"+cclass+"',sex='"+sex+"',age="+age+",natio n='"+nation+"',clname='"+clname+"',place='"+place+"' where sno="+sno+""; pstmt=conn.prepareStatement(sql);

int count=pstmt.executeUpdate();//更新或修改 String sqllll="select * from S where sno"+"="+"'"+sno+"'"; stmt=conn.createStatement(); rs=stmt.executeQuery(sqllll); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } %>

<% for(int i=0;i"); out.println("
"+showStr[i]+"
"); } %>
<% while(rs.next()) { out.println(""); for(int i=0;i"); out.println("
"+rs.getString(cloStr[i])+"
"); } out.println("
"); } %>


学生信息查询模块: 学生信息查询模块: 查询模块 p_cha.html:

Insert title here

欢迎您使用学生管理系统


查 询 操 作

请输入学生学号:
请输入学生性别:
请输入学生住址:


请输入学生姓名:



Cha.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" import="java.sql.*"%> call stored procedure <% int PAGESIZE=3; int pageCount=0; int curPage=1; java.sql.Connection conn=null; PreparedStatement pstmt=null; Statement stmt=null; ResultSet rs=null; String[] cloStr={"sno","sname","cclass","sex","age","nation","clname","place"} ; String[] showStr={"学生编号","学生姓名","所在年级","性别","年龄","民族","专 业","住址"}; if(conn==null) { String strURL="jdbc:mysql://localhost/test"; String strDBUser="root";

String strDBPwd="123"; try { Class.forName("com.mysql.jdbc.Driver"); out.println("连接数据库成功......"); conn=java.sql.DriverManager.getConnection(strURL,strDBUser,strDBPwd); } catch(ClassNotFoundException e) { e.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } } try{ String sql="select * from S"; stmt=conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.C ONCUR_READ_ONLY);//返回可滚动结果集 rs=stmt.executeQuery(sql); https://www.wendangku.net/doc/6716634815.html,st(); int size=rs.getRow(); pageCount=(size%PAGESIZE==0)?(size/PAGESIZE):(size/PAGESIZE+1); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } //获取想要显示的页数: String integer=request.getParameter("curPage"); if(integer==null) { integer="1"; }

try { curPage=Integer.parseInt(integer); } catch(NumberFormatException e) {curPage=1; } if(curPage<=1) { curPage=1; } if(curPage>=pageCount) { curPage=pageCount; } //如果要显示第curPage页,那么游标应移到posion的值是: int posion=(curPage-1)*PAGESIZE+1; rs.absolute(posion); // 设置游标的位置 %>

<% for(int i=0;i

.println("

"); } %> <% int count=0; do{ if(count>=PAGESIZE) break; out.println(""); for(int i=0;i;i++) { out.println(""); } out.println("");

count++; }while(rs.next()); %>
"); out.println("
"+showStr[i]+"
"); out.println("
"+rs.getString(cloStr[i])+"
首页 上一页 下一页 尾页 第<%=curPage%>页/共<%=pageCount%>页
输入页码数
size=4>

按学号查询: 按学号查询: ①cha_xuehao.jsp:
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312" import="java.sql.*"%> call stored procedure <% int PAGESIZE=3; int pageCount=0; int curPage=1; java.sql.Connection conn=null; PreparedStatement pstmt=null; Statement stmt=null; ResultSet rs=null; String[] cloStr={"sno","sname","cclass","sex","age","nation","clname","place"} ; String[] showStr={"学生编号","学生姓名","所在年级","性别","年龄","民族","专 业","住址"};

if(conn==null) { String strURL="jdbc:mysql://localhost/test"; String strDBUser="root"; String strDBPwd="123"; try { Class.forName("com.mysql.jdbc.Driver"); out.println("连接数据库成功......"); conn=java.sql.DriverManager.getConnection(strURL,strDBUser,strDBPwd); } catch(ClassNotFoundException e) { e.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!"); } } try{ String sno=request.getParameter("number"); byte no[]=sno.getBytes("ISO-8859-1"); sno=new String(no); String sql="select * from S where sno="+sno; stmt=conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.C ONCUR_READ_ONLY);//返回可滚动结果集 rs=stmt.executeQuery(sql); https://www.wendangku.net/doc/6716634815.html,st(); int size=rs.getRow(); pageCount=(size%PAGESIZE==0)?(size/PAGESIZE):(size/PAGESIZE+1); } catch(Exception ex) { ex.printStackTrace(); out.println("您输入的信息有误,请查证后再重新输入!");

} //获取想要显示的页数: String integer=request.getParameter("curPage"); if(integer==null) { integer="1"; } try { curPage=Integer.parseInt(integer); } catch(NumberFormatException e) {curPage=1; } if(curPage<=1) { curPage=1; } if(curPage>=pageCount) { curPage=pageCount; } //如果要显示第curPage页,那么游标应移到posion的值是: int posion=(curPage-1)*PAGESIZE+1; rs.absolute(posion); //

设置游标的位置 %>

<% for(int i=0;i"); out.println("
"+showStr[i]+"
"); } %>
<% int count=0; do{ if(count>=PAGESIZE) break;

out.println(""); for(int i=0;i"); out.println("
"+rs.getString(cloStr[i])+"
"); } out.println("
"); count++; }while(rs.next()); %>
首页 上一页 下一页 尾页 第<%=curPage%>页/共<%=pageCount%>页
输入页码数
size=4>

②其中按姓名(cha_xuehao.jsp)、按性别 其中按姓名 、 (cha_xingbie.jsp)、按地址(cha_dizhi.jsp)查询基本同上, 、按地址 查询基本同上 查询基本同上, 此处代码省略。 此处代码省略。

五、实验结果 经过测试,系统可以正常运行。 六、实验分析 通过这次的实验, 我们熟练掌握了 Web 开发与设计术, 提高了自己程序设计的能力,并且培养了团队合作精 神。

相关文档
相关文档 最新文档