<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'ConnectionDemo2.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head>
<body>
<%
String mysqldr="com.mysql.jdbc.Driver";
String mysqlurl="jdbc:mysql://localhost:3306/javaweb";
String mysqluser="root";
String mysqlpassword="admin";
try
{
Class.forName(mysqldr);
Connection conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
out.println("succeed!");
}
catch(ClassNotFoundException e)
{
out.println("not found the class!");
}
catch(SQLException e)
{
out.println("not connected!");
}
try
{
Statement stmt=conn.createStatement();
String addUser="INSERT INTO user(userid,username,userpassword) VALUES(null,'James','1234')";
stmt.executeUpdate(addUser);
}
catch(SQLException e)
{
out.println("添加用户信息失败");
}
%>
</body>
</html>
显示Statement stmt=conn.createStatement();
conn出错~~
<%@ page import="java.sql.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'ConnectionDemo2.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head>
<body>
<%
String mysqldr="com.mysql.jdbc.Driver";
String mysqlurl="jdbc:mysql://localhost:3306/javaweb";
String mysqluser="root";
String mysqlpassword="admin";
try
{
Class.forName(mysqldr);
Connection conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
out.println("succeed!");
}
catch(ClassNotFoundException e)
{
out.println("not found the class!");
}
catch(SQLException e)
{
out.println("not connected!");
}
try
{
Statement stmt=conn.createStatement();
String addUser="INSERT INTO user(userid,username,userpassword) VALUES(null,'James','1234')";
stmt.executeUpdate(addUser);
}
catch(SQLException e)
{
out.println("添加用户信息失败");
}
%>
</body>
</html>
显示Statement stmt=conn.createStatement();
conn出错~~
确定你的数据库名、用户名、密码 是正确的?
conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
Statement stmt=conn.createStatement();
}
........................
2个try是2个域,第一个里的变量conn在第2个里不能用。
可以把2个try写一起,也可以把Connection的定义放到try之外。即使把2个try写一起,也要把Connection
定义写外面,这样才能在finally里conn.close()。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'ConnectionDemo2.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head>
<body>
<%
String mysqldr="com.mysql.jdbc.Driver";
String mysqlurl="jdbc:mysql://localhost:3306/javaweb";
String mysqluser="root";
String mysqlpassword="admin";
Connection conn=null;
try
{
Class.forName(mysqldr);
conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
out.println("succeed!");
Statement stmt=conn.createStatement();
String addUser="INSERT INTO user(userid,username,userpassword) VALUES(null,'James','1234')";
stmt.executeUpdate(addUser);
}
catch(ClassNotFoundException e)
{
out.println("not found the class!");
}
catch(SQLException e)
{
out.println("not connected!");
} %>
</body>
</html>
运行显示
succeed! not connected!
也就是有SQLExcepiton错误可是哪错了呢?
String mysqlurl="jdbc:mysql://localhost:3306/javaweb";
String mysqluser="root";
String mysqlpassword="admin"; try
{
Class.forName(mysqldr);
Connection conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
Statement stmt=conn.createStatement();
String addUser="INSERT INTO user(userid,username,userpassword) VALUES(null,'James','1234')";
int k=stmt.executeUpdate(addUser);
out.println(k);
}
打印的结果是不是1,如果是1就表示正确!
这样你写入试试,应该不会出错了
Statement stmt=null;try{
Class.forName(mysqldr);
Connection conn=DriverManager.getConnection(mysqlurl,mysqluser,mysqlpassword);
Statement stmt=conn.createStatement();
String addUser="INSERT INTO user(userid,username,userpassword) VALUES(null,'James','1234')";
int k=stmt.executeUpdate(addUser);
out.println(k); }
k的值应该是1;
out.println("succeed!"); 数据库没连上,succeed提示没有左右 if(conn !=null){
System.out.
}else
////
成功的话再进行下面的操作