2014-02-20 46 views
0

我有一个基于Web的应用程序,其中每三秒我连接到一个数据库并从GPS设备查询数据。SEVERE:找不到合适的驱动程序(MySQL)

不幸的是,当应用程序工作超过几个小时超出没有我得到的例外:“严重:找不到合适的驱动程序jdbc ....”。应用程序仍然工作并连接到数据库,但每次请求新数据时都会打印消息。

为什么我得到这个异常?为什么只有在几个小时的工作后才出现?

任何解决方案?

+0

也许您需要提供产生该错误的代码来获得帮助 – Asenar

回答

2

也许某处放置了一个格式不正确的数据库连接URL,您的DriverManager无法找到合适的驱动程序。例如,假设你需要一个像“jdbc:mysql:// my_database_host/test”这样的URI,并且在你的代码中有一个“jdbc:MySql:// my_database_host/test”,这将会失败。

不过,我认为,真正的问题就出在这里:

我有每个3秒我连接到 数据库基于Web的应用程序

我建议你,你考虑改变这种设计到一个托管连接池,无论是你的应用服务器本地还是你最喜欢的实现(dbcp,c3p0等)。通过这种方式,您的应用程序将获得性能(您将使用一系列事先打开的连接,因此您可以节省时间和麻烦来打开它们)和可扩展性(您的应用程序是否经常为每个请求打开连接?您是否考虑过这些后果在频繁请求的生产环境中这样做?更好地限制打开的连接)

+0

也许我没有很好地解释这种情况。我只有一个连接操作,每三秒钟我要求一个新的数据。它像一个魅力,直到我开始得到我所说的例外。而真正有趣的是,它仍然继续工作...... – user3332209

+1

我很抱歉,我误解了你。堆栈跟踪是否会提供任何其他信息?由于“没有合适的驱动程序...”错误听起来很像执行DriverManager.getConnection的问题:S –

+0

没有堆栈跟踪。只有一行文字。 – user3332209

相关问题