站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Eclipse 专题[分享]eclipse 3.0 中jre设置的小错误导致在java文件中连接数据库失败

[分享]eclipse 3.0 中jre设置的小错误导致在java文件中连接数据库失败

摘要: [分享]eclipse 3.0 中jre设置的小错误导致在java文件中连接数据库失败

java.lang.ClassNotFoundException: org.gjt.mm.mysq.Driver

这也许是最普遍的错误了,一般解决方法就是检查数据库驱动是否安装到jdk目录下

(如:将mysql-connector-1-3-1.jar文件copy到jdk目录下的lib文件夹中)

classpath是否设置了驱动的目录

(CLASSPATH=.;D:\j2sdk\lib\dt.jar;D:\j2sdk\lib\tools.jar;D:\j2sdk\lib\mysql-connector-1-3-1.jar;)。

我的以上两项设置都正确,测试连接代码没有问题,但是在eclipse中就是报错(如上)

import java.sql.*;

public class mysqltest {

public static void main(String[] args) {
//driverName
String driverName="org.gjt.mm.mysql.Driver";
//database username
String userName="root";
//psw
String userPasswd="ss";
//dbname
String dbName="java_app";
//tablename
String tableName="staff";
//conncet comments
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;

System.out.println(url);

try{
Class.forName(driverName).newInstance();

Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = statement.executeQuery(sql);
// get result
ResultSetMetaData rmeta = rs.getMetaData();
// get col
int numColumns=rmeta.getColumnCount();
// output
for(int i=1;i<=numColumns;i++) {
if(i System.out.print(rmeta.getColumnName(i)+" | ");
else
System.out.println(rmeta.getColumnName(i));
}
while(rs.next()){
for(int i=1;i<=numColumns;i++) {
if(i System.out.print(rs.getString(i).trim()+" | ");
else
System.out.println(rs.getString(i).trim());
}
}
rs.close();
connection.close();
}catch(Exception ex){
System.out.println(ex);
System.exit(0);
}

}
}

在确认JDK这边没有问题后我把注意力转向eclipse的设置

(eclipsewindowpreferencesjavainstalled JREs)

edit

小错误就在这!取消Use Default system libraries

把数据库驱动所在的jar包加入

ok!保存设置重启eclipse,运行测试程序成功!



↑返回目录
前一篇: 招聘Eclipse开发人员
后一篇: ECLIPSE初学手记(2)