我已从 Eclipse Jee 中的构建路径添加了 mysql-connector-java-8.0.12.jar。我 还通过添加以下内容注册了该类:
Class.forName("com.mysql.jdbc.Driver");
但它仍然给我这个错误:
java.lang.ClassNotFoundException:com.mysql.jdbc.Driver
这是Student.java Servlet的代码。
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
public class Student extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
// business logic
response.setContentType("text/html");
PrintWriter out=response.getWriter();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sem5", "root", "root");
String sql = "insert into p4 values(?,?,?,?,?,?,?)";
PreparedStatement ps = con.prepareStatement(sql);
String enroll = request.getParameter("enroll");
String username = request.getParameter("username");
String password = request.getParameter("password");
String gender = request.getParameter("gender");
String email = request.getParameter("email");
String mobile = request.getParameter("mobile");
String address = request.getParameter("address");
ps.setString(1, enroll.toString());
ps.setString(2, username.toString());
ps.setString(3, password.toString());
ps.setString(4, gender.toString());
ps.setString(5, email.toString());
ps.setString(6, mobile.toString());
ps.setString(3, address.toString());
ps.executeUpdate();
ps.close();
}
catch(Exception ex) {
System.out.println("Exception : "+ ex);
out.println("Error");
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
doGet(request,response);
}
}
提前致谢...
最佳答案
使用 MySQL 连接器 8 时,需要使用 com.mysql.cj.jdbc.Driver
而不是 com.mysql.jdbc.Driver
。请参阅文档 here 。
关于java - 将 'java.lang.ClassNotFoundException: com.mysql.jdbc.Driver' 添加到构建路径并使用 Class.forName() 注册后如何修复它;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57335885/