测试代码如下:DBconn.javapackage Mysqltest;
import java.sql.*;
public class DBconn
{String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/test";
String MyUser="root";
String MyPassword="janlon";
Connection conn = null;
ResultSet rs = null;
public DBconn()
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{rs = null;
try
{conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
}----------------------------------------------------------------
Mysqltest.jsp<%@ page contentType="text/html; charset=gb2312" %>
<html>
<head>
<title>JSP连接MySQL!</title>
</head>
<body>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="DBconn1" scope="page" class="Mysqltest.DBconn" />
<%
ResultSet RS = DBconn1.executeQuery
("SELECT * FROM test_table");
while (RS.next()) {
out.print("<h1>" + RS.getString("test_column")
+"</h1>");
}
RS.close();
%>
</body >
</html >
import java.sql.*;
public class DBconn
{String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/test";
String MyUser="root";
String MyPassword="janlon";
Connection conn = null;
ResultSet rs = null;
public DBconn()
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{rs = null;
try
{conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
}----------------------------------------------------------------
Mysqltest.jsp<%@ page contentType="text/html; charset=gb2312" %>
<html>
<head>
<title>JSP连接MySQL!</title>
</head>
<body>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="DBconn1" scope="page" class="Mysqltest.DBconn" />
<%
ResultSet RS = DBconn1.executeQuery
("SELECT * FROM test_table");
while (RS.next()) {
out.print("<h1>" + RS.getString("test_column")
+"</h1>");
}
RS.close();
%>
</body >
</html >
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
~~~
这一段改为:
public DBconn(){}
----public ResultSet executeQuery(String sql)
{
rs = null;
try
{
conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}~~~~~~~
这段该为:
public ResultSet executeQuery(String sql)
{rs = null;
try
{
Class.forName(DBDriver);
conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("DBconn (): " + e.getMessage());
}
catch(SQLException ex)
{
System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//testDB为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
然后在CLASSPATH系统变量的最后添加c:/mm.mysql.jdbc-1.2c;(此处/应该是反斜杠)
创建一个JavaBean,名为DBconn.java,在Tomcat的/webapps/examples/WEB-INF/classes下建立一个mysqltest目录,将该文件保存在这个目录中,DBconn.java用来封装与数据库链接的操作。DBconn.java的内容如下:
package Mysqltest;
import java.sql.*;
public class DBconn
{String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
String MyUser="yzysy";
String MyPassword="yzysy";
Connection conn = null;
ResultSet rs = null;
public DBconn()
{try
{Class.forName(DBDriver);
}
catch(java.lang.ClassNotFoundException e)
{System.err.println("DBconn (): " + e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{rs = null;
try
{conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
return rs;
}
}
我们注意到在这段程序是只有
String DBDriver="org.gjt.mm.mysql.Driver";
String ConnStr="jdbc:mysql://localhost/my_test";
带有MySQL的特色,其余的程序与其他JDBC应用并没有什么不同。
利用JDK的Javac命令编译DBconn.java形成相应的class文件。
在Tomcat的/webapps/examples/jsp目录下建立Mysqltest.jsp文件。其内容如下:
<%@ page contentType="text/html; charset=gb2312" %>
<html>
<head>
<title>JSP连接MySQL!</title>
</head>
<body>
<%@ page language="java" import="java.sql.*" %>
<jsp:useBean id="DBconn1" scope="page" class="Mysqltest.DBconn" />
<%
ResultSet RS = DBconn1.executeQuery
("SELECT * FROM my_test_table");
while (RS.next()) {
out.print("<h1>" + RS.getString("test_column")
+"</h1>");
}
RS.close();
%>
</body >
</html >
在这儿,你已经看不到任何MySQL的痕迹了。
现在在浏览器的地址栏中输入http://localhost/examples/jsp/Mysqltest.jsp,你应该可以看到黑体的“Hello,I'm MySQL!”。