java通过JDBC连接数据库,老是报错:ClassNotFoundException.该导入的jar包我也已经导入了。

代码如下:

public final class DBclass {

public static String user = "root";
public static String password = "admin";
public static String url = "jdbc:mysql://localhost:3306/money_manage";
public static String driver = "com.mysql.jdbc.Driver";

//构造函数
private void DBconnection(){}

//获取数据库连接;
public static Connection getConnection(){
Connection conn = null;
try{
//加载MySql的驱动类
Class.forName("driver") ;
conn = (Connection) DriverManager.getConnection(url, user, password);
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
}catch(Exception e){
System.out.println("database connect failed!");
e.printStackTrace();
}

return conn;
}

//关闭数据库资源
public static void closeDB(ResultSet rs, Statement st,Connection conn){
try{
if(rs != null)
rs.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(st != null)
st.close();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(conn != null)
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}

}
public static void main(String args[]){
DBclass.getConnection();

}
}
报错:
找不到驱动程序类 ,加载驱动失败!java.lang.ClassNotFoundException: driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at DBclass.getConnection(DBclass.java:25)
at DBclass.main(DBclass.java:64)

导入的jar包是:mysql-connector-java-5.1.6-bin.jar
是导入到该工程的lib目录下的。
因为在工程中出现这个报错,所以将它单独的执行了一下,也是同样的错误。在网上百度了很多,都没有把问题解决,求高手指点一下。
对应的jar包

//加载MySql的驱动类
Class.forName("driver") ;————把driver变量的双引号去掉!driver是作为一个参数传入的!而不是“driver”
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-27
不劳而获的答案是正确,这个变量的意思是Driver这个类的路径,你对比下jar包里面的路径就知道了,class,forName意思是java里面的映射机制,有兴趣可以了解下
第2个回答  2012-02-27
你可以重装一下系统
第3个回答  2012-02-27
你看你的lib包是不是没有加载到classpath里?
第4个回答  2012-02-27
把你导入的包粘出来看下呢追问

我上传图片了。。但是我这边好像看不到。jar包是这个:mysql-connector-java-5.1.6-bin.jar
在WEB-INF下面的lib.

追答

我不是要这个包,而是你代码顶部导入的包。类,到入的类那种包

java通过JDBC连接数据库,老是报错:ClassNotFoundException.该导入的...
Class.forName("driver") ;———把driver变量的双引号去掉!driver是作为一个参数传入的!而不是“driver”

连接数据库时出现java.lang.ClassNotFoundException: com.mysql.jdbc...
应该是你的数据库连接的jar包没有正确的导入,1、没有导入包 2、导入的包的路径是不对的 就是将mysql的jar包放到你的lib目录下就可以了,可以通过build path--》add external library或是直接将jar包直接复制到lib目录下就可以了。

JDBC连接oracle数据库问题 ClassNotFoundException
环境变量CLASSPATH,.;G:\\oracleexe\\app\\oracle\\product\\11.2.0\\server\\jdbc\\lib\\ojdbc6_g.jar;在A.java所在的目录编译、运行,就要前面有.;,否则指向A.java所在目录 PATH中添加G:\\ProgramFiles\\Java\\jdk1.7.0_40\\bin —— 记住:是添加 ...

jdbc连接mysql提示java.lang.NoClassDefFoundError怎么回事(jar包已...
Class.forName("com.mysql.jdbc.Driver");conn = DriverManager.getConnection( "jdbc:mysql:\/\/localhost:3306:mydata", "root","root");我连接的SQL Server,代码如下 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");conn = DriverManager.getConnection("jdbc:sqlserver:\/\/localhost:1433...

JAVA连接MYSQL出现问题:ClassNotFoundException: com.mysql.jdbc.Driver...
我以前也遇到过,你不仅需要在你的eclipse里面通过build path--》add external library找到之前的mysql驱动jar包导入。如果还是出现异常,还要把这个jar包放到tomcat的lib文件夹下面。问题绝对解决!

...MySQL数据库,java.lang.ClassNotFoundException: com.mysql.jdbc.Dr...
在Eclipse中连接MySQL数据库时,遇到了"java.lang.ClassNotFoundException: com.mysql.jdbc.Driver"错误。为了解决这一问题,我遵循了以下步骤:第一步,将MySQL的jar包整合到项目中。操作方法是:在项目上右键点击,选择"Properties",随后进入"Java build path"选项。点击"Libraries"选项卡,选择"Add ...

...jdbc.Driver找不到,显示ClassNotFoundException呢?还有就是为什么...
你需要去mysql官网下载mysql的jdbc驱动包,引入你的项目中 ClassNotFound异常就是缺失了这个jar包导致的

...提示java.lang.classnotfoundexception:sun.jdbc.odbc.jdbcodbcdriver...
用jdbc连接数据库时出现java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDrive的问题的解决方式:就是项目没有找到数据库应用的驱动程序。解决方法:你可以到网上下一个SQLJDBC4.JAR,才不多有400KB左右。(1)首先你得知道你的sqljdbc4.jar放在哪儿?我的路径是C:\\Program Files...

...MySQL出现错误:java.lang.ClassNotFoundException: com.mysql.jdbc...
个人觉得如果你单独成一个项目能运行的话,换成一个方法也是没有问题的,楼上的那些方法肯定都不是出错的地方,因为如果没有导入包的话你这个程序都不可能运行的。但是现在出现了问题,这其中一种最优可能的原因是你擅自把在这个函数中的某些个变量比如Driver定义在了函数访问不到的地方,比如主函数中,...

...时出现错误:java.lang.ClassNotFoundException: com.mysql.jdbc.Dr...
mysql-connector-java-5.1.6-bin要导入工程中 eclipse 中只要右击工程文件夹属性选项-Java Build Path-Libraries-Add Extenal JARs 添加即可……加入后可在.classpath文件中看到 <classpathentry path="C:\/usr\/local\/mysql-connector-java-5.0.4-bin.jar" kind="lib"\/> ...

相似回答