【问题标题】:java.sql.SQLException: Cannot create JDBC driver of class '' for connect URL 'null'] with root causejava.sql.SQLException:无法为连接 URL 'null'] 创建类 '' 的 JDBC 驱动程序,根本原因
【发布时间】:2016-11-28 23:49:12
【问题描述】:

我正在尝试使用 jndi 查找建立与数据库的连接

这是我在 webapp meta-inf 文件夹中定义的 context.xml

<Resource name="jdbc/connectDB" auth="Container" type="javax.sql.DataSource"
        maxTotal="100" maxIdle="30" maxWaitMillis="10000" username="root"
        password="" driverClassName="com.mysql.jdbc.Driver"
        url="jdbc:mysql://localhost:3306/connect" />

我正在使用这个过程在 web.xml 文件夹中调用它

<resource-ref>
        <res-ref-name>jdbc/connectDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

在研究解决错误后,我还尝试使用 webappname.xml 引用我的 catalina 文件夹中的文件。我还在tomcat的lib文件夹中添加了jar,但错误仍然存​​在。

这是错误跟踪

SEVERE: Servlet.service() for servlet [dispatcher] in context with path [/connectmain] threw exception [Request processing failed; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Cannot create JDBC driver of class '' for connect URL 'null'] with root cause
java.sql.SQLException: No suitable driver
    at java.sql.DriverManager.getDriver(DriverManager.java:315)

请问我错过了什么才能得到这个错误

【问题讨论】:

  • 你的代码如何使用这个资源,你能添加那部分吗?
  • 我在注册时使用它

标签: java mysql spring tomcat jndi


【解决方案1】:

也许你应该下载 mysql-connector-java.x.x.xx 并尝试一下。 这取决于mysql版本

【讨论】:

    【解决方案2】:

    您的 xml 文件不是此错误的位置。您需要为您的数据库下载 jdbc 驱动程序才能连接到它。

    另外,我不认为你的 java 文件是问题,但是我又不知道你的工作区的一切,也没有看到一个看起来完全像这样的堆栈跟踪。但是您的问题也可能出在调用 DriverManager.getConnection([url of db], [username], [password]);

    【讨论】:

    • 您可能错过的另一件事是,右键单击您的项目 > 属性 > java 构建路径 > 库 > 确保添加了 jdbc jar。
    猜你喜欢
    • 2011-11-08
    • 2018-01-14
    • 2011-05-14
    • 2011-07-06
    • 2015-04-15
    • 2015-12-18
    • 2021-11-16
    • 2014-01-25
    相关资源
    最近更新 更多