我写了一个小代码:
import java.sql.*;
public class test{
public static void main(String args[]){
try{
String ur="jdbc:mysql://localhost:3306/test";
String user="root";
String password="123456";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection(ur,user,password);
System.out.println("success");
}
catch(Exception e){}
}}
注:jdk环境设置没问题;mysql-connector-java-5.1.6-bin.jar,也在我的classpath中。
mysql服务器处于启动状态,没问题。3306端口处于监听状态。我的想连接装数据时候自动装上的那个test数据库。
我的用户明:root 密码:123456.我登陆过。密码和用户都没问题;
环境:jdk1.6+mysql6.0;这个代码编译没问题:运行的时候提示:Exception in Thread "main" java.lang.NoClassDefFoundError:java/sql/SQLClientInfoException
at java.lang.Class.forName0(native Method)
at java.lang.Class.forName(Unknown Source)
at com.mysql.jdbc.ConnectionImpI.<clinit><ConnectionImpl.java:213>
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DirverManager.getConnection(Unknown Source)
at java.sql.DirverManager.getConnection(Unknown Source
at test.main(test.java:12)
请各位兄台帮小弟一个忙。看看怎么修改修改。我先表示感谢~
import java.sql.*;
public class test{
public static void main(String args[]){
try{
String ur="jdbc:mysql://localhost:3306/test";
String user="root";
String password="123456";
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con=DriverManager.getConnection(ur,user,password);
System.out.println("success");
}
catch(Exception e){}
}}
注:jdk环境设置没问题;mysql-connector-java-5.1.6-bin.jar,也在我的classpath中。
mysql服务器处于启动状态,没问题。3306端口处于监听状态。我的想连接装数据时候自动装上的那个test数据库。
我的用户明:root 密码:123456.我登陆过。密码和用户都没问题;
环境:jdk1.6+mysql6.0;这个代码编译没问题:运行的时候提示:Exception in Thread "main" java.lang.NoClassDefFoundError:java/sql/SQLClientInfoException
at java.lang.Class.forName0(native Method)
at java.lang.Class.forName(Unknown Source)
at com.mysql.jdbc.ConnectionImpI.<clinit><ConnectionImpl.java:213>
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DirverManager.getConnection(Unknown Source)
at java.sql.DirverManager.getConnection(Unknown Source
at test.main(test.java:12)
请各位兄台帮小弟一个忙。看看怎么修改修改。我先表示感谢~
其二:.;C:\Program Files\Java\jdk1.6.0\lib\tools.jar;C:\Program Files\Java\jdk1.6.0\lib\dt.jar;C:\Program Files\Java\jdk1.6.0\lib\mysql.jar
这是我的classpath.最后一个mysql.jar 是我改的名字。原来的名字是:mysql-connector-java-5.1.6-bin.jar
减压有有:com\mysql\jdbc..这样的目录结构。也表明存在一个包的层次结构。当然同时也有这么目录结构org\gjt\mm\mysql\Driver.class.
请高手们给我看看我的classpath可设对否?
那 OK
现在如果是你要运行这段代码。先什么IDE 工具都别用。我也没用。你的classpath会设置什么。
我就在标准的JDK环境变量里面加上了mysql.jar的目录;
这是我的classpath变量:.;C:\Program Files\Java\jdk1.6.0\lib\dt.jar;C:\Program Files\Java\jdk1.6.0\lib\tools.jar;C:\Program Files\Java\jdk1.6.0\lib\mysql.jar
很明显就在以前的基础上多了一个mysql.jar目录。而这个mysql.jar目录正是:mysql-connector-java-5.1.6-bin.jar。只是我觉得名字太长。我改为mysql.jar而已
我都很纳闷别人运行没问题。可我运行有问题。编译是没问题能通过。是不是我的classpath少设置了什么目录???
http://topic.csdn.net/u/20071231/15/dc83e5e3-781f-48e7-ae39-3b9c200c4bb9.html
问题解决了:
环境变量有问题:错。
没有数据库test:错。
把連接字符串中的localhost改為本機IP試試:也不是这个原因;真的错误是:我用的驱动版本高了。换成:mysql-connector-java-5.0.8.zip+ jdk1.6
肯定让君一路畅通。不能用:mysql-connector-java-5.1.6.tar.gz
再次对所有回复帖子的兄台表示衷心的感谢。并祝福你们的 IT之路一路顺风。
你不是mysql6.0吗?