Servlet修改

#Select 修改操作思路(通过ID查找到对应的信息,带参数回显到修改页面)

1.1通过ID查找到对应的信息
	@WebServlet("/toupd")
	public class toupd extends HttpServlet{
	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String id = request.getParameter("id");
		Connection conn=null;
		try {
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/1701d","root","root");
		PreparedStatement pr = conn.prepareStatement("select * from tb_car2 where id=?");	
		pr.setString(1, id);
		ResultSet re = pr.executeQuery();
		if (re.next()) {
			int id1 = re.getInt("id");
			String name = re.getString("name");
			String ys = re.getString("ys");
			String jg = re.getString("jg");
			String scd = re.getString("scd");
			String rq = re.getString("rq");
			Tb tb=new Tb(id1, name, ys, jg, scd, rq);
			System.out.println(tb);
			request.setAttribute("ulist", tb);
			request.getRequestDispatcher("upd.jsp").forward(request, response);
		}
		
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			if (conn!=null) {
				try {
					conn.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
	}
	}
1.2带参数回显到修改页面
	<html>
	<head>
	<link href="<%=request.getContextPath()%>/css/css.css" rel="stylesheet">
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<title>Insert title here</title>
	</head>
	<body>
	<form action="upd" method="post">
	序号<input  type="text" name="id" readonly="readonly" value="${ulist.id }"><br><br>
	品牌<input type="text" name="name" value="${ulist.name }"><br><br>
	颜色<input type="text" name="ys" value="${ulist.ys }"><br><br>
	价格<input type="text" name="jg" value="${ulist.jg }"><br><br>
	生产地<input type="text" name="scd" value="${ulist.scd }"><br><br>
	生产日期<input type="date" name="rq" value="${ulist.rq }"><br><br>
	<input type="submit" value="提交">
	<!-- 	<td>${u.id }</td>
			<td>${u.name }</td>
			<td>${u.ys }</td>
			<td>${u. jg}</td>
			<td>${u. scd}</td>
			<td>${u.rq }</td> -->
	</form>
	</body>
	</html>
1.3修改信息,将所有信息提交到upd,成功并重定向到列表页面
			@WebServlet("/upd")
	public class upd extends HttpServlet {
		@Override
		protected void service(HttpServletRequest request, HttpServletResponse response)
				throws ServletException, IOException {
			String id = request.getParameter("id");
			String name = request.getParameter("name");
			String ys = request.getParameter("ys");
			String jg = request.getParameter("jg");
			String scd = request.getParameter("scd");
			String rq = request.getParameter("rq");
			System.out.println(id);
			System.out.println(name);
			System.out.println(ys);
			System.out.println(jg);
			System.out.println(scd);
			System.out.println(rq);
			Connection conn = null;
			try {
				Class.forName("com.mysql.jdbc.Driver");
				conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/1701d", "root", "root");
				PreparedStatement pr = conn.prepareStatement("update tb_car2 set name=?,ys=?,jg=?,scd=?,rq=? where id=?");
				pr.setString(1, name);
				pr.setString(2, ys);
				pr.setString(3, jg);
				pr.setString(4, scd);
				pr.setString(5, rq);
				pr.setString(6, id);
	
				int insert = pr.executeUpdate();
				if (insert > 0) {
					System.out.println("修改成功");
					response.sendRedirect("list");
				} else {
					System.out.println("修改失败");
				}
	
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} finally {
				if (conn != null) {
					try {
						conn.close();
					} catch (SQLException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
				}
			}
			/*
			 * <!-- <td>${u.id }</td> <td>${u.name }</td> <td>${u.ys }</td> <td>${u.
			 * jg}</td> <td>${u. scd}</td> <td>${u.rq }</td> -->
			 */
	
		}
	}
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Java Web中,我们可以使用Servlet修改数据库。首先,我们需要导入相关的包和类,如javax.servlet.Servlet和java.sql.Connection等。接下来,我们需要编写一个继承自javax.servlet.http.HttpServlet的类,该类将处理我们的数据库操作。 在servlet的doPost()方法中,我们可以获取到表单数据或者URL参数,并将其转换成合适的数据类型。然后,我们需要建立数据库连接,可以使用java.sql.DriverManager来获取数据库连接。在获取连接后,我们可以创建一个java.sql.Statement对象来执行SQL语句。 在SQL语句中,我们可以使用INSERT、UPDATE或DELETE语句来修改数据库。例如,我们可以使用INSERT语句将新数据插入到数据库中,使用UPDATE语句来更新现有数据,或使用DELETE语句来删除数据。我们还可以使用WHERE子句来限制修改的范围。 执行SQL语句后,我们需要关闭Statement和Connection对象,以释放资源并关闭数据库连接。在关闭连接之前,我们可以使用java.sql.Connection.commit()方法提交事务,以确保修改操作被持久化。 除了使用基本的JDBC来执行数据库操作,我们还可以使用一些Java持久化框架(如MyBatis、Hibernate等),它们提供了更高级别的抽象和便捷的API,可以简化数据库操作的编写和管理。 总的来说,使用Servlet修改数据库需要进行以下步骤:导入相关包和类、编写Servlet类、获取表单数据或URL参数、建立数据库连接、执行SQL语句、关闭Statement和Connection对象。通过这些步骤,我们可以在Java Web应用程序中完成数据库的修改操作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值