Jsp实验报告课程设计名称:兼职网站系:交通运输管理学院学生姓名:班级:学号:成绩:指导教师:开课时间:2013学年第2 学期一.设计题目兼职网站二.主要内容本网站涉及兼职信息、用户信息的数据管理。
从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。
用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。
(1)用户的登录判定(2)录入兼职的信息,并保存到数据库中(3)根据用户的需求选择查询方式,查询相关兼职信息(4)将信息从数据库中删除三.具体要求(1)建立数据库表格存储用户数据(用户名及密码)。
(2)建立数据库表格存储兼职信息,主要包括ID、兼职名称、地点、工资和联系方式。
(3)编写jsp 语句连接数据库(4)利用request函数提交表单,获取输入信息(5)以SQL语句对数据库进行操作,完成信息的添加,查询及删除等功能。
四.进度安排五.成绩评定正文1、系统的需求分析和功能设计随着电子信息在人们生活中的的使用比重不断增加,人们越来越习惯在网站上查找自己所需要的信息不仅仅只是因其快捷,更因其接触的面更加广泛,信息的基础量足够大,足以满足人们更加细化的需求。
在寻找兼职体验工作生活或赚取生活费用时,可以减少时间的浪费及其他不必要的消耗。
本网站涉及兼职信息、用户信息的数据管理。
从管理的角度可将信息分为两类:兼职信息管理、用户数据管理。
用户数据管理为用户的登录判定,兼职信息管理包括兼职信息显示及兼职信息的录入、查询和删除。
用户登录后可以根据自己的需要对信息进行添加、查询和删除的操作2、源程序及注释主页:<%@page language="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=UTF-8"><title>xxx兼职网站</title><meta name="descripton"content="xxx"><meta name="keywords"content="兼职,兼职网站"></head><frameset rows="100px,*"><frame name="top"src="top.jsp"frameborder="0"scrolling="no"/><frameset cols="170px,*"><frame name="menu"src="introuduce.jsp"frameborder="0"scrolling="no"/> <frame name="content"src="login.jsp"marginwidth="25px"marginheight="25px"frameborder="0"/></frameset></frameset></html>登录:login.jsp主要内容:<form name="form1"method="post"action="valid.jsp"><table width="400"height="120"border="0"align="center"><caption><span class="STYLE1">欢迎登录xxx兼职网站</span></caption><tr><td width="166">用户名:</td><td width="318"><input name="username"type="text"id="username"></td></tr><tr><td>密码:</td><td><input name="password"type="password"id="password"></td></tr><tr><td colspan="2"align="center"><input type="submit"name="Submit"value="登录"><input type="reset"name="Submit2"value="取消"></td></tr></table></form>登录判断:valid.jsp核心代码:<body><% String user=request.getParameter("username");String pass=request.getParameter("password");Class.forName("com.mysql.jdbc.Driver");Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/zy","root","root") ;PreparedStatement ps =con.prepareStatement("select * from account where username=? and password=?");ps.setString(1,user); ps.setString(2,pass);ResultSet rs = ps.executeQuery();if(rs.next()){response.sendRedirect("list.jsp");}else response.sendRedirect("login.jsp"); %></body>信息列表:list.jsp主要内容:<body><td colspan=3align=right><a href="find.jsp">进入查询界面</a></td><td colspan=2align=right><a href="login.jsp">退出</a></td><% Class.forName("com.mysql.jdbc.Driver");Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/zy?user=root&passw ord=root&useUnicode=true");PreparedStatement ps =con.prepareStatement("select * from t_zhiye"); ResultSet rs = ps.executeQuery();%><div width="98%"align="center"><h2>所有信息</h2></div><table width="98%"border="0"cellpadding="0"cellspacing="0"> <tr align="center"bgcolor="#e3F4F7"><td width="5%">ID</td><td width="10%">职业名称</td><td width="35%">地点</td><td width="12%">工资</td><td width="13%">tel</td></tr><%while(rs.next()){out.println("<tr align=center>");out.println("<td>"+rs.getString(1)+"</td>");out.println("<td>"+rs.getString(2)+"</td>");out.println("<td>"+rs.getString(3)+"</td>");out.println("<td>"+rs.getString(4)+"</td>");out.println("<td>"+rs.getString(5)+"</td>");} %></table><td colspan=2align=right><a href="add.jsp">添加</a></td><td colspan=2align=right><a href="del.jsp">删除</a></td></body>查询:find.jsp主要内容:<form name="form1"method="post"action="result.jsp"><center><span class="STYLE1">查询</span></center><br><center>查询方式:<label><input type="radio"name="selectetype"value="按id查询">id</label><label><input type="radio"name="selectetype"value="按职业查询">职业</label> <label><input type="radio"name="selectetype"value="按地点查询">地点</label> <input type="text"name="selecteinfo"><label><input type="submit"name="Submit"value="查询"></label><td><a href="list.jsp">返回</a></td></center></form>Result.jsp核心代码:String selectetype=request.getParameter("selectetype");String selecteinfo=request.getParameter("selecteinfo");if(selectetype!=null&&selecteinfo!=null){Class.forName("com.mysql.jdbc.Driver");Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/zy?user=root&passw ord=root&useUnicode=true&characterEncoding=utf-8");Statement ps=con.createStatement();String userid="按id查询";String username="按职业查询";String useradr="按地点查询";if((userid.trim()).equals(selectetype.trim())){ResultSet rs1=ps.executeQuery("select *from t_zhiye whereid='"+selecteinfo+"'");%><table width="98%"border="0"cellpadding="0"cellspacing="0"><tr align="center"bgcolor="#e3F4F7"><td width="10%">职业名称</td><td width="35%">地点</td><td width="12%">工资</td><td width="13%">tel</td></tr><%while(rs1.next()){out.println("<tr align=center>");out.println("<td>"+rs1.getString(1)+"</td>");out.println("<td>"+rs1.getString(2)+"</td>");out.println("<td>"+rs1.getString(3)+"</td>");out.println("<td>"+rs1.getString(4)+"</td>");out.println("<td>"+rs1.getString(5)+"</td>");}%></table><%}if((username.trim()).equals(selectetype.trim())){ResultSet rs2=ps.executeQuery("select *from t_zhiye wherename='"+selecteinfo+"'");%><table width="98%"border="0"cellpadding="0"cellspacing="0"><tr align="center"bgcolor="#e3F4F7"><td width="5%">ID</td><td width="10%">职业名称</td><td width="35%">地点</td><td width="12%">工资</td><td width="13%">tel</td></tr><%while(rs2.next()){out.println("<tr align=center>");out.println("<td>"+rs2.getString(1)+"</td>");out.println("<td>"+rs2.getString(2)+"</td>");out.println("<td>"+rs2.getString(3)+"</td>");out.println("<td>"+rs2.getString(4)+"</td>");out.println("<td>"+rs2.getString(5)+"</td>");out.println("</tr>");} %></table><%}if((useradr.trim()).equals(selectetype.trim())){ResultSet rs3=ps.executeQuery("select *from t_zhiye whereadress='"+selecteinfo+"'");%><table width="98%"border="0"cellpadding="0"cellspacing="0"><tr align="center"bgcolor="#e3F4F7"><td width="5%">ID</td><td width="10%">职业名称</td><td width="35%">地点</td><td width="12%">工资</td></tr><%while(rs3.next()){out.println("<tr align=center>");out.println("<td>"+rs3.getString(1)+"</td>");out.println("<td>"+rs3.getString(2)+"</td>");out.println("<td>"+rs3.getString(3)+"</td>");out.println("<td>"+rs3.getString(4)+"</td>");out.println("<td>"+rs3.getString(5)+"</td>");out.println("</tr>");} %></table><% } }%><br><td><a href="list.jsp"class="STYLE2">返回</a></td>添加:add.jsp主要内容:<form name="form1"method="post"action="saveadd.jsp"><div align="center"class="STYLE1">添加信息</div><table width="300"height="120"border="0"align="center"><tr><td width="120">职业名称:</td><td width="210"><input name="name"type="text"id="name"></td></tr><tr><td>地址:</td><td><input name="adress"type="text"id="adress"></td> </tr><tr><td>工资:</td><td><input name="price"type="text"id="price"></td> </tr><tr><td>联系电话:</td><td><input name="tel"type="text"id="tel"></td> </tr><tr><td colspan="2"align="center"><input type="submit"name="Submit"value="确定添加"><input type="reset"name="Submit2"value="重置"></td></tr></table><td><a href="list.jsp">返回</a></td></form>Saveadd.jsp核心代码:<% request.setCharacterEncoding("UTF-8");String name=request.getParameter("name");String adr=request.getParameter("adress");String pri=request.getParameter("price");String tel=request.getParameter("tel"); //利用jdbc完成数据库插入操作 Class.forName("com.mysql.jdbc.Driver");Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/zy?user=root&passw ord=root&useUnicode=true&characterEncoding=utf-8");PreparedStatement ps =con.prepareStatement("insert intot_zhiye(name,adress,price,tel) values(?,?,?,?)");ps.setString(1,name);ps.setString(2,adr);ps.setString(3,pri);ps.setString(4,tel);ps.execute();con.close();response.sendRedirect("list.jsp"); %>删除:del.jsp主要内容: <form name="form1"method="post"action="savedel.jsp"> <div align="center"class="STYLE1">按ID删除信息</div><table width="100"height="20"border="0"align="center"><tr><td width="74">ID:</td><td width="210"><input name="id"type="text"id="id"></td></tr><tr><td colspan="2"align="center"><input type="submit"name="Submit"value="确定删除"><input type="reset"name="Submit2"value="重置"></td></tr></table></form>Savedel.jsp核心代码:String id=request.getParameter("id");Class.forName("com.mysql.jdbc.Driver");//java的反射Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/zy","root","root") ;PreparedStatement ps = con.prepareStatement("delete from t_zhiye where id=?");ps.setString(1,id);ps.execute();con.close();response.sendRedirect("list.jsp"); %>2、运行示例及结果分析:进入主页后,输入用户名及密码{(aa,aa)或(denglu,123456)}点击登录信息列表:进入信息列表后可以点击上方的查询或下方的添加、删除进入不同功能界面查询界面:可以选择不同的方式查询信息添加界面:删除界面:4、调试和运行程序过程中产生的问题及采取的措施(1)数据库的连接。