0

我正在开发一个旨在与某些 Web 服务(jsp)集成的 Androip 应用程序为此,我使用 Intellij Idea 11.1.3 进行开发,我的 Web 服务器是 Apache Tomcat 7(用于 Web 服务)。当我尝试加载mysql驱动程序Class.forName("com.mysql.jdbc.Driver");没问题(没有例外)但是当我这样做时

java.sql.Connection con = DriverManager.getConnection(DatabaseUrl,"root","root");

抛出一些异常是这样的:

java.sql.SQLException: 在 java.sql.DriverManager.getConnection(DriverManager.java:602) 在 java.sql.DriverManager.getConnection(DriverManager.java:185) 中找不到适合 jdbc:mysql:localhost:3306/androiddb 的驱动程序在 org.apache.jsp.add_jsp._jspService(add_jsp.java:78) 在 org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java :728) 在 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 在 org.apache.jasper.servlet 的 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)。 JspServlet.service(JspServlet.java:334) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache .catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 123) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) org.apache.catalina.valves.ErrorReportValve .invoke(ErrorReportValve.java:99) 在 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在 org. org.apache.coyote.http11.AbstractHttp11Processor 上的 apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)。在 org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822) 的 org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) 的进程(AbstractHttp11Processor.java:1004)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java :662)线程.run(线程.java:662)线程.run(线程.java:662)

正如说没有找到合适的驱动程序。但是mysql驱动程序(jar文件)从项目结构->库->新项目库附加到我的模块。可能是什么问题?

4

3 回答 3

1

您的网址错误;它应该是jdbc:mysql://localhost:3306/androiddb(注意添加//betweenjdbc:mysql:localhost)。

另请参阅连接器/J 的驱动程序/数据源类名称、URL 语法和配置属性

于 2013-01-23T09:10:09.857 回答
0

您缺少将 mysql-connectio-java.jar 添加到应用程序的 lib 文件夹中。转到您的 webapp 部署文件夹并检查 jar 是否在文件夹 WEB-INF/lib 中

于 2013-01-23T08:01:08.763 回答
-1

我得到了同样的错误 Eclipse 说:加载类com.mysql.jdbc.Driver'. This is deprecated. The new driver class iscom.mysql.cj.jdbc.Driver'。驱动程序通过 SPI 自动注册,通常不需要手动加载驱动程序类。

我曾经删除命令 Class.forName("com.mysql.jdbc.Driver") 但有时它运行正常,有时它返回空白页 - 没有错误

现在我使用 Class.forName("com.mysql.cj.jdbc.Driver") 就可以了

于 2019-06-08T10:03:11.073 回答