JAVAWeb实验

一、实验目的
实现留言的删除、更新,并且要求有session的会话。

二、实验内容

1.对用户是否登陆作出验证,未登陆自动跳转回登陆页面
2.获得要修改的记录(通过list_notes.jsp中传递过来的id)
3.将记录按id查询出来填写在表单中,并继续向updatemessage.jsp进行传递(通过隐藏表单,目的是不暴露给用户)
4.对数据库进行删除操作(通过message.jsp中传递过来的id ),成功则设置ok
5.删除成功或失败提示,并3秒钟自动跳转回message.jsp

三、实验成果(对应实验内容的jsp代码)
Update.jsp
<%@ page language=“java” contentType=“text/html; charset=gb2312”%>
<%@page import=“java.sql.*” %>

<% if(session.getAttribute("ok")!=null) { int id = Integer.parseInt(request.getParameter("id")); String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String pwd = "123456"; boolean ok = false;
	try
	{
		Class.forName(driver);
		Connection conn = DriverManager.getConnection(url,user,pwd);
		PreparedStatement pstmt = conn.prepareStatement
		("select * from message where id=?");
		pstmt.setInt(1,id);
		 ResultSet rs = pstmt.executeQuery();
		 if(rs.next())
		 {
	%>
		<form action="updatemessage.jsp">
			作者:<input type="text" name="author" value="<%=rs.getString("author")%>"/><br>
			题目:<input type="text" name="title" value=<%=rs.getString("title")%>/><br>
			留言:<textarea name="content" rows=7 ><%=rs.getString("content")%></textarea><p>
			<input type="hidden" name=id value="<%=id %>"/>
			<input type=submit value="提交"/>
			<input type=reset value="重写"/>
		</form>
	
	<%	}}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	else
	{
		response.setHeader("refresh","3;url=login.html");
%>
		你还没有登录,请登录!3秒内跳转回登录页面!				
<%}
 %>

Updatemessage.jsp
<%@ page language=“java” contentType=“text/html; charset=gb2312”%>
<%@page import=“java.sql.*”%>

<% if (session.getAttribute("ok") != null) { String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String pwd = "123456"; boolean ok = false;
			String title = request.getParameter("title");
			String name = request.getParameter("author");
			String content = request.getParameter("content");

			try {
				int id = Integer.parseInt(request.getParameter("id"));
				Class.forName(driver);
				Connection conn = DriverManager.getConnection(url, user,
						pwd);
				PreparedStatement pstmt = conn
						.prepareStatement("update message set author=?,title=?,content=? where id=?");
				pstmt.setString(1, name);
				pstmt.setString(2, title);
				pstmt.setString(3, content);
				pstmt.setInt(4, id);
				pstmt.executeUpdate();
				ok = true;
			} catch (Exception e) {
				e.printStackTrace();
			}

			if (ok) {
	%>
	修改留言成功,3秒后跳转!
	<%
		response.setHeader("refresh", "3;url=message.jsp");
			} else {
	%>
	修改失败!
	<%
		response.setHeader("refresh", "3;url=message.jsp");
			}
		} else {
			response.setHeader("refresh", "3;url=login.html");
	%>
	你还没有登录,请登录!3秒内跳转回登录页面!
	<%
		}
	%>
</body>

Delete.jsp
<%@ page language=“java” contentType=“text/html; charset=gb2312”%>
<%@page import=“java.sql.*” %>

<% if(session.getAttribute("ok")!=null) { String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String pwd = "123456"; boolean ok = false; try { int id = Integer.parseInt(request.getParameter("id")); Class.forName(driver); Connection conn = DriverManager.getConnection(url,user,pwd); PreparedStatement pstmt = conn.prepareStatement ("delete from message where id=?"); pstmt.setInt(1,id); pstmt.executeUpdate(); ok = true; } catch(Exception e) { e.printStackTrace(); }
	if(ok)
		{
	%>
		删除留言成功,3秒后跳转!
	<%
		response.setHeader("refresh","3;url=message.jsp");
		}
		else
		{%>
			删除失败!
	<%
		response.setHeader("refresh","3;url=message.jsp");
	}}
	else
	{
		response.setHeader("refresh","3;url=login.html");
%>
		你还没有登录,请登录!3秒内跳转回登录页面!				
<%}%>

四、运行结果

图1.修改留言内容

图2.修改成功

图3.修改成功后得留言板

图4.删除成功

图5.删除成功后的留言板

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值