在JSP和IntelliJ IDE中,我嘗試在我的應用程序內部登錄時遇到錯誤java.lang.ClassNotFoundException:com.mysql.jdbc.Driver。在開發JSP項目時使用IntelliJ作爲我的IDE。我試着用mysql-connector-java版本6.0.4,5.1.28,5.1.23。但它仍然不起作用,並提醒同樣的錯誤。無法在intellij中使用maven連接mysql數據庫
的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>groupId</groupId>
<artifactId>SmartRec</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/commons-httpclient/commons-httpclient -->
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.4</version>
</dependency>
</dependencies>
</project>
EmployeeRegistration.java
public class EmployeeRegistration extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String n=request.getParameter("name");
String l=request.getParameter("address");
String cwp = request.getParameter("cwposition");
String ph=request.getParameter("phone");
String m=request.getParameter("mail");
String psw=request.getParameter("password");
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con= DriverManager.getConnection("jdbc:mysql://localhost:3306/smartrecruit","root","");
System.out.println("conect");
PreparedStatement ps=con.prepareStatement("insert into employee(name,address,cwposition,phone,email,password) values(?,?,?,?,?,?)");
ps.setString(1,n);
ps.setString(2,l);
ps.setString(3,cwp);
ps.setString(4,ph);
ps.setString(5,m);
ps.setString(6,psw);
int i=ps.executeUpdate();
if(i>0){
String name = n;
request.setAttribute("message", name);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
out.close();
}
你真是越來越沒有發現異常的類?你應該得到這個:'加載類'com.mysql.jdbc.Driver'。這已被棄用。新的驅動程序類是'com.mysql.cj.jdbc.Driver'。驅動程序通過SPI自動註冊,通常不需要手動加載驅動程序類。 ' –
你可以添加你得到的整個異常嗎? –
我得到了這樣的例外。 java.lang.ClassNotFoundException:com.mysql.jdbc.Driver \t at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1285) – jorge