gpt4 book ai didi

java - 在 Tomcat 8 上使用 Mybatis、c3p0 启动 webapp 时出错

转载 作者:行者123 更新时间:2023-11-28 22:19:01 25 4
gpt4 key购买 nike

我正在尝试在 Tomcat 8 上部署我的 webapp,它使用 Mybatis 3.2.7c3p0 进行连接池以连接到 < strong>SQLServer 数据库。我的类路径中有 sqljdbc4.jar。我在 webapp 启动期间查询数据库以获取一些值。

该应用程序在 Tomcat 7 中运行,但是在 Tomcat 8 上,我无法连接到数据库。我使用 eclipse 进行了很多调试,根本原因在 c3p0 中的文件 BasicResourcePool.class 文件中,它正在等待资源可用,但随后抛出 java.lang.InterruptedException.

因此,Mybatis 抛出一个 java.SQL.SQLException,因此我的 webapp 无法启动,因为它无法连接到数据库。

有没有人升级到Tomcat 8,成功使用Mybatis-c3p0了?如果是的话,我在这里遗漏了什么吗?

最佳答案

解决了这个问题。这是 JDBC 驱动程序问题。 Mybatis 似乎不太擅长显示底层异常。

在 tomcat 8 的文档中找到这个:

Thus, the web applications that have database drivers in their WEB-INF/lib directory cannot rely on the service provider mechanism and should register the drivers explicitly.

因此,我在应用程序启动期间添加了一个带有适当驱动程序类的 Class.forName(),这解决了我的问题。

关于java - 在 Tomcat 8 上使用 Mybatis、c3p0 启动 webapp 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30099182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com