到目前为止,我正在编写一个程序,该程序创建一个以前创建的现有JDBC数据库的表,下面是代码:
import java.sql.*;
public class Cars1 {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
Class.forName("com.mysql.cj.jdbc.Driver").newInstance();
System.out.println("Connecting to database...");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/jdbctraining?useSSL=false", "root", "Ed05021990");
System.out.println("Sucessfully connected to database");
System.out.println("Creating table in the selected database...");
stmt = conn.createStatement();
String sql = "create table Cars(id int, model varchar (50), price double)";
stmt.executeUpdate(sql);
System.out.println("Table created");
}catch(SQLException se){
se.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
finally {
try {
if(stmt!=null)
conn.close();
}
catch(SQLException se) {
}
try {
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println("Disconnected from database");
}
}
但是,它引发了一个“找不到类”异常,例如以下输出:
java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at Cars1.main(Cars1.java:9)
Disconnected from database
我从未遇到过来自不同数据库的其他表这样的问题。您能帮我解决一下此类代码中的“错别字”吗?
答案 0 :(得分:-1)
您使用了错误的mysql驱动程序类。
尝试一下:
Class.forName("com.mysql.jdbc.Driver");
在类路径中添加mysql-connector-java- {version} -bin.jar。