jsp与mysql的数据添加

来源:百度知道 编辑:UC知道 时间:2024/06/25 18:10:18
求一个jsp与mysql的数据写入代码,就是从html页面的表单提交到数据库的代码;
---------------------------------------------------------------
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*"%>

<html>
<head><title>使用JSP连接MySQL数据库案例测试</title></head>
<body bgcolor="#abb1a1">
<center>
<%
try{
%>

<%

String uname=request.getParameter("name");
String pwd=request.getParameter("password");
String em=request.getParameter("email");
String udizi=request.getParameter("dizi");
int id=Integer.parseInt(request.getParameter("id"));

String driver="org.gjt.mm.mysql.Driver";
//String driver="org.gjt.mm.mysql.Driver";
String url="jdbc:mysql://localhost:3306/dbtext?user=root&password=123456";

你出现的异常是数字格式化异常
以下是具体的错误

1.这两句应该换一下位置
stmt.executeUpdate(sql);
stmt=conn.createStatement();
2. 出现数字格式异常,首先你要保证你在表单中填写的id是否是数字,如果不是数字,当你运行到这句的时候int id=Integer.parseInt(request.getParameter("id")); 就会抛NumberFormatException;
另外,遍历结果集的中
String s1=rs.getString(1);
这句,你的数据库中的第一个字段id是int型的,不能用getString();类型不匹配,应该用rs.getInt(1)

String s1=rs.getString(1);
应该是getInt(1);

表名不用加引号吧!
String sql="INSERT INTO 'denglutext'(id,name,password,email,dizi)values('+id+','"+uname+"','"+pwd+"','"+em+"','"+udizi+"')";
'denglutext'不用加引号

id=Integer.parseInt(request.getParameter("id"));
这句有问题,看看request.getParameter("id")是不是空值,因为它可能没有接收到参数。看看该参数的设置页面中的名称是不是“id”.