嘿,我是java的新手,现在正在学习JDBC。那么我写了这个代码来创建到我的数据库所在的SQL Server的连接:mysql中的JDBC连接错误(ClassNotFoundException)
import java.sql.*;
public class Mysql
{
public static void getmysqlconnection()
{
try
{
Connection con = null;
Class.forName("com.mysql,jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost/EMP","root","password");
System.out.println("connection created");
}
catch(SQLException se)
{
System.out.println("SQl Exception" + se);
}
catch(ClassNotFoundException e)
{
System.out.println("ClassNotFoundException" + e);
}
}
public static void main(String args[])
{
getmysqlconnection();
}
}
但是在编译它产生以下错误: ClassNotFoundExceptionjava.lang.ClassNotFoundException:com.mysql.jdbc。驱动程序
请绝对不要**使用'System.out.println(e)',因为它依赖['Throwable#getLocalizedMessage'](https://docs.oracle.com/javase/8/docs/ api/java/lang/Throwable.html#getLocalizedMessage--)没有提供足够的问题信息。请至少使用'e.printStackTrace()'或使用记录器来处理您的异常。 –
另外,当使用JDBC 4驱动程序时(MySQL JDBC驱动程序是JDBC 4)**您不需要使用'Class#forName' **,所以基本上只需删除该行即可。 –
感谢Luiggi您在异常处理方面的建议是一个宝石。但真正的问题是我没有为我的jdbc驱动选择类路径。我必须选择它,因为我正在使用JDBC驱动程序3.嗯,我从环境变量中设置类路径并且程序工作正常。但是,你能告诉我从cmd设置类路径的语法吗? – saurabh095