WEB课程设计宿舍管理系统.docx
WEB 课程设计宿舍管理系统北京工业大学2016 - 2017 学年 第 1 学期信息学部计算机学院作业报告小组成员:教师评语:2016 年 12 月 16 日学生宿舍管理信息系统1 / 42 WEB 课程设计宿舍管理系统目录系统结构 . 1系统模块流程图 . 1系统模块功能图 . 2数据库设计 . 3子模块设计 . 4登录注册模块 . 4管理模块 . 6浏览模块 . 7功能模块 . 8插入数据 . 8删除数据 . 10修改数据 . 12查看数据 . 14存在的问题 . 18其他核心技术 . 18现场修改过程 . 202 / 42 WEB 课程设计宿舍管理系统一、系统结构1.系统模块流程图a.登录注册流程图b.录入信息流程图录入信息保存到数据库是否继续录入返回主菜单NY用户名密码是否正确YN进入系统Y结束结束c.输出信息流程图d.插入信息流程图保存到数据库YY是否继续输出NN返回主菜单Y1 / 42 WEB 课程设计宿舍管理系统结束结束e.删除信息流程图f. 修改信息流程图开始开始删除信息修改信息从数据库中删除保存到数据库是否继续修改返回主菜单YY是否继续删除NN返回主菜单Y结束结束2.系统模块功能图宿舍管理系统登录注册密码不正确退出系统密码正确进入系统管理员普通用户录 查入 看信 信息 息修改信息插 删入 除查看信息2 / 42信 信息 息 WEB 课程设计宿舍管理系统按按按学号按宿舍二、数据库设计学宿号舍本系统所使用的所有的数据,均存放在数据库中。该系统使用的是 SQLServer Management Studio。在数据库中建立一个 dorm 数据库,在 dorm 数据库中建立三个表,分别为管理员表、普通用户表、信息表。管理员表:列名 数据类型 是否为空 备注username nchar(10) 否password nchar(10) 否用户名密码普通用户表:列名 数据类型 是否为空 备注username nchar(10) 否password nchar(10) 否用户名密码信息表:列名 数据类型 是否为空 备注学号姓名班级性别年龄age nchar(10) 否3 / 42 WEB 课程设计宿舍管理系统build nchar(10) 否home nchar(10) 否宿舍号然后在 JSP 使用 JAVA 语句对数据进行连接。具体代码如下:<%String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)System.out.println("加载数据库引擎失败");System.exit(0);tryString user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();4 / 42 WEB 课程设计宿舍管理系统rs.close();stmt.close();con.close(); catch (SQLException e)e.printStackTrace();System.exit(0);%>最后对数据库进行录入、增加、删除、修改等功能的实现。三、子模块设计1.登录注册模块该模块主要代码如下:登录判断:5 / 42 WEB 课程设计宿舍管理系统<% request.setCharacterEncoding("utf-8");String username=request.getParameter("username");String password1=request.getParameter("password");String name=request.getParameter("user");String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)System.out.println("加载数据库引擎失败");System.exit(0);tryString user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();String sql="select * from "+name+" where name='"+username+"' and6 / 42 WEB 课程设计宿舍管理系统password='"+ password1 + "'"ResultSet rs=stmt.executeQuery(sql);String s1="admin"String s2="stu"if(rs.next()if(s1.equals(name)session.setAttribute("login", "true");response.sendRedirect("main.html"); elsesession.setAttribute("login", "true");response.sendRedirect("main2.html");elseout.print("用户名或密码错误,请重新输入! ");%><br><br><p><a href="jiemian.jsp"<%>返回</a></p>stmt.close();con.close();catch (SQLException e)e.printStackTrace();7 / 42 WEB 课程设计宿舍管理系统System.exit(0);%>注册代码:<tr><td align="center">用户名:</td><td align="center"><inputtype="text"name="name" required/></td></tr><tr><td align="center">密码:</td><td align="center"><inputtype="text"name="password"required/></td></tr><tr><td"2""center"><input type="submit"value="注册colspan= align="/></td></tr><%request.setCharacterEncoding("utf-8");String name=request.getParameter("name");String password1=request.getParameter("password");String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)System.out.println("加载数据库引擎失败");8 / 42 WEB 课程设计宿舍管理系统System.exit(0);tryString user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();String sql="INSERT INTO adminVALUES('"+name+"','"+password1+"')"int i=stmt.executeUpdate(sql);stmt.close();con.close();catch (SQLException e)e.printStackTrace();System.exit(0);%>2.管理模块9 / 42 WEB 课程设计宿舍管理系统该模块主要代码:<body bgcolor=#CFE3CA text="#004080"><form method="post"><blockquote><h1 align="center"> 宿舍管理系统</h1><hr width="600"</blockquote>><table width="500"height="300"align="center"0">"1""0""border= cellpadding= cellspacing=<tr><td align="center">管理员</td></tr><tr><td align="center"><a href="readmain.jsp"</td></tr>>查看学生信息</a>>插入学生信息<tr><td align="center"><a href="insert.jsp"</a></td></tr><tr><td align="center"><a href="update.jsp">修改学生信息</a></td></tr>10 / 42 WEB 课程设计宿舍管理系统<tr><td align="center"><a href="delete.jsp">删除学生信息</a></td></tr></table><br><br><div align="center"><a href="jiemian.jsp">退出</a></div></body>3.浏览模块该模块主要代码:<body bgcolor=#CFE3CA text="#004080"><form method="post"><blockquote><h1 align="center"> 宿舍管理系统</h1>11 / 42 WEB 课程设计宿舍管理系统"600"<hr width= ></blockquote><table width="500"height= align=0">"300" "center" "1""0""border= cellpadding= cellspacing=<tr><th align="center">查看学生信息</th></tr><tr><td align="center"><a href="read.jsp">查看全部学生信息</a></td></tr><tr><td align="center"><a href="read1.jsp">按学号查看信息</a></td></tr><tr><td align="center"><a href="read2.jsp">按宿舍号查看信息</a></td></tr></table><br><br><div align="center"><a href="main.html"href="jiemian.jsp">退出</a> </div><%>返回</a> <aif(session.getAttribute("c")=null)response.sendRedirect("jiemian.jsp"); %></body>4.功能模块12 / 42 WEB 课程设计宿舍管理系统1.插入数据该模块主要代码:<tr><td align="center">学号:</td><td align="center"><inputtype="text"name="sno" required/></td></tr><tr><td align="center">姓名:</td><td align="center"><inputtype="text"name="name"required/></td></tr><tr><td align="center">班级:</td><td align="center"><inputtype="text"name="class"required/></td></tr><tr><td align="center">年龄:</td><td align="center"><inputtype="text"name="age"required/></td></tr><tr><td align="center">性别:</td><td align="center"><inputtype="text"name="sex"required/></td></tr><tr><td align="center">楼号:</td><td align="center"><inputtype="text"name="build"required/></td></tr>13 / 42 WEB 课程设计宿舍管理系统<tr><td align="center">房间号:</td><td align="center"><inputtype="text"name="home"required/></td></tr>"2""center"><input type="submit"value="插入<tr><td colspan= align="/></td></tr><%request.setCharacterEncoding("utf-8");String sno=request.getParameter("sno");String name=request.getParameter("name");String class1=request.getParameter("class");String sex=request.getParameter("sex");String age=request.getParameter("age");String build=request.getParameter("build");String home=request.getParameter("home");String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)System.out.println("加载数据库引擎失败");System.exit(0);14 / 42 WEB 课程设计宿舍管理系统tryString user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();String sql="INSERT INTO xinxiVALUES('"+sno+"','"+name+"','"+class1+"','"+sex+"','"+age+"','"+build+"','"+home+"')"int i=stmt.executeUpdate(sql);stmt.close();con.close();catch (SQLException e)e.printStackTrace();System.exit(0);%>2.删除数据15 / 42 WEB 课程设计宿舍管理系统该模块主要代码:<body bgcolor=#CFE3CA text="#004080"><form action="function2.jsp"method="post"><blockquote><h1 align="center"> 宿舍管理系统</h1><hr width="600"</blockquote>><table width="500"height="300"align="center"0">"1""0""border= cellpadding= cellspacing=<tr><td colspan= align="center">删除学生信息</td></tr>"2"<tr><td align="center">学号:</td><td align="center"><inputtype="text"name="sno"required/></td></tr>"2""center"><input type="submit"value="删除<tr><td colspan= align="/></td></tr></table>16 / 42 WEB 课程设计宿舍管理系统</form><br><br><div align="center"><a href="main.html">返回</a> <ahref="jiemian.jsp">退出</a> </div><%if(session.getAttribute("c")=null)response.sendRedirect("jiemian.jsp");%></body><%request.setCharacterEncoding("utf-8");String sno=request.getParameter("sno");String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)17 / 42 WEB 课程设计宿舍管理系统System.out.println("加载数据库引擎失败");System.exit(0);tryString user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();String sql="delete from xinxi where sno='"+sno+"'"int i=stmt.executeUpdate(sql);stmt.close();con.close();catch (SQLException e)e.printStackTrace();System.exit(0);%><div align="center"><br>删除成功!<br><br><a href="main.html">返回管理员界面</a> <br><br><a href="delete.jsp">继续删除</a>18 / 42 WEB 课程设计宿舍管理系统</div><%if(session.getAttribute("c")=null)response.sendRedirect("jiemian.jsp");%></body>3.修改数据该模块主要代码:19 / 42 WEB 课程设计宿舍管理系统<body bgcolor=#CFE3CA text="#004080"><form action="function3.jsp"method="post"><blockquote><h1 align="center"> 宿舍管理系统</h1><hr width="600"</blockquote>><table width="500"height="100"align="center"0">"1""0""border= cellpadding= cellspacing=<tr><td colspan= align="center">旧信息</td></tr>"2"<tr><td align="center">修改学生学号:</td><tdalign="center"><input type="text"name="sno"required/></td></tr></table><br><br><table width="500"height="300"align="center"border= cellpadding= cellspacing="1""0""0"><tr><td colspan= align="center">新信息</td></tr>"2"<tr><td align="center">新学号:</td><td align="center"><inputtype="text"name="sno1"required/></td></tr><tr><td align="center">新姓名:</td><td align="center"><inputtype="text"name="name"required/></td></tr><tr><td align="center">新班级:</td><td align="center"><input20 / 42 WEB 课程设计宿舍管理系统type="text"name="class"required/></td></tr><tr><td align="center">新年龄:</td><td align="center"><inputtype="text"name="age"required/></td></tr><tr><td align="center">新性别:</td><td align="center"><inputtype="text"name="sex"required/></td></tr><tr><td align="center">新楼号:</td><td align="center"><inputtype="text"name="build"required/></td></tr><tr><td align="center">新房间号:</td><td align="center"><inputtype="text"name="home"required/></td></tr>"2""center"><input type="submit"value="修改<tr><td colspan= align="/></td></tr></table></form><br><br><div align="center"><a href="main.html">返回</a> <ahref="jiemian.jsp">退出</a> </div><%if(session.getAttribute("c")=null)response.sendRedirect("jiemian.jsp");%></body>21 / 42 WEB 课程设计宿舍管理系统<%request.setCharacterEncoding("utf-8");String sno=request.getParameter("sno");String sno1=request.getParameter("sno1");String name=request.getParameter("name");String class1=request.getParameter("class");String sex=request.getParameter("sex");String age=request.getParameter("age");String build=request.getParameter("build");String home=request.getParameter("home");String JDriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"String connectDB ="jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=JAVA"tryClass.forName(JDriver); catch (ClassNotFoundException e)System.out.println("加载数据库引擎失败");System.exit(0);try22 / 42 WEB 课程设计宿舍管理系统String user = "lph"String password = "123"Connection con = DriverManager.getConnection(connectDB,user,password);Statement stmt = con.createStatement();String sql="update xinxi setsno='"+sno1+"',name='"+name+"',class="+class1+",sex='"+sex+"',age="+age+",build='"+build+"',home="+home+" where sno='"+sno+"'"int i=stmt.executeUpdate(sql);stmt.close();con.close();catch (SQLException e)e.printStackTrace();System.exit(0);%><div align="center"><br>修改成功!<br><br><a href="main.html">返回管理员界面</a> <br><br><a href="update.jsp">继续修改</a></div><%23 / 42 WEB 课程设计宿舍管理系统if(session.getAttribute("c")=null)response.sendRedirect("jiemian.jsp");%></body>4.查看数据该模块主要代码:<table border= align="center">1405050<tr height= ><th width= >学号</th><th width= >姓名</th><th50width= >班级</th>505050<th width= >性别</th><th width= >年龄</th><th width= >楼号50</th><th width= >房间号</th>24 / 42 WEB 课程设计宿舍管理系统</tr></table><% while (rs.next() %><table border= align="center">140<tr height= >50<td width= ><%out.println(rs.getObject(1); %></td>50<td width= ><%out.println(rs.getObject(2); %></td>50<td width= ><%out.println(rs.getObject(3); %></td>50<td width= ><%out.println(rs.getObject(4); %></td>50<td width= ><%out.println(rs.getObject(5); %></td>50<td width= ><%out.println(rs.getObject(6); %></td>50<td width= ><%out.println(rs.getObject(7); %></td></tr></table><body bgcolor=#CFE3CA text="#004080"><form action="function4.jsp"method="post"><blockquote><h1 align="center"> 宿舍管理系统</h1><hr width="600"</blockquote>><table width="500"height="300"align="center"border= cellpadding= cellspacing="1""0""25 / 42 WEB 课程设计宿舍管理系统0"><tr><td colspan= align="center">按学号查看信息</td></tr>"2"<tr><td align="center">请输入学号:</td><td align="center"><inputtype="text"name="sno"required/></td></tr>"2""center"><input type="submit"value="查询<tr><td colspan= align="/></td></tr></table></form><br><br><div align="center"><