日期:2014-05-20  浏览次数:20915 次

连接数据库异常 自己琢磨了一小时无法解决 请教高手
import   java.sql.Connection;
import   java.sql.DriverManager;
import   java.sql.ResultSet;
import   java.sql.SQLException;
import   java.sql.Statement;


public   class   ExecuteQuery   {
public   static   void   main(String[]     args)   {
String   url   =   "jdbc:mysql://localhost:3306/student_course ";
String   userName   =   "root ";
String   password   =   "12345 ";
String   sql   =   null;
Connection   conn   =   null;
Statement   stmt   =   null;
ResultSet   rs   =   null;
String   driverClass   =   "com.mysql.jdbc.Driver ";

try   {
Class.forName(driverClass);
}   catch   (ClassNotFoundException   e)   {
System.out.println( "加载驱动器类时出现异常 ");
}

这是程序的一部分   在运行到Class.forName(driverClass)
就会抛出异常  
不知道是什么原因
自己无法解决  
请教

配置为MySql官方驱动mysql-connector-java-5.0.7-bin.jar
放置在JAVA_HOME/lib/目录下   并且将这个路径添加进了classpath

请教   请教~~~请教高手~~~~

------解决方案--------------------
Mysql应该至少有两种DriverClass的名字的,如果想知道你这个
mysql-connector-java-5.0.7-bin.jar
里面的叫什么名字的话,就用解压软件打开浏览一下里面的目录结构,找到那个Driver.class的完整目录结构作为Class.forName的参数就可以了

另外需要注意的就是编译器能不能找到你的jar文件,最简单的你要放在类文件当前目录是肯定没问题的

------解决方案--------------------
Class.forName(driverClass); 这个改下

Class.forName(driverClass).newInstance();
------解决方案--------------------
就是类路径的问题
好好找找
------解决方案--------------------
抛出异常很明显就是MYSQL的驱动路径问题。自己再仔细看看。
------解决方案--------------------
而且问题应该是出在这里 String driverClass = "com.mysql.jdbc.Driver ";
------解决方案--------------------
给出jsp连接各类数据库的范例:

一、jsp连接Oracle8/8i/9i数据库(用thin模式)
testoracle.jsp如下:
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.sql.* "%>
<html>
<body>
<%Class.forName( "oracle.jdbc.driver.OracleDriver ").newInstance();
String url= "jdbc:oracle:thin:@localhost:1521:orcl ";
//orcl为你的数据库的SID
String user= "scott ";
String password= "tiger ";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql= "select * from test ";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为: <%=rs.getString(1)%>
您的第二个字段内容为: <%=rs.getString(2)%>
<%}%>
<%out.print( "数据库操作成功,恭喜你 ");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
二、jsp连接Sql Server7.0/2000数据库
testsqlserver.jsp如下:
<%@ page contentType= "text/html;charset=gb2312 "%>
<%@ page import= "java.sql.* "%>
<html>
<body>
<%Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ").newInstance();
String url= "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs ";