tomcat 8.5.x tomcat-jdbc.jar vs 官方 oracle ojdbc6.jar 驱动

Posted

技术标签:

【中文标题】tomcat 8.5.x tomcat-jdbc.jar vs 官方 oracle ojdbc6.jar 驱动【英文标题】:tomcat 8.5.x tomcat-jdbc.jar vs official oracle ojdbc6.jar driver 【发布时间】:2019-01-10 11:36:17 【问题描述】:

我正在为 jdbc 连接到 oracle 数据库而苦苦挣扎,我应该使用哪个?tomcat-jdbc.jar(tomcat 内部)或 oracle ojdbc6.jar(oracle 官方) 这两个驱动有什么区别? (ojdbc6 版本 11.2.0.4 保证我可以使用 oracle 12c db 和 oracle 10 db 可以做同样的 tomcat-jdbc.jar??)

【问题讨论】:

你应该使用 oracle ojdbc6.jar 【参考方案1】:

实际上,它们是不同的库。 tomcat-jdbc.jar 是默认的 Tomcat 连接池(在 Tomcat 版本 8.5 中),它负责管理连接,允许您快速访问已创建的连接,而 ojdbc6.jar 是来自 Oracle 的实际 JDBC 驱动程序,它提供与 Oracle 数据库服务器的数据库连接。 换句话说,您不能单独使用 tomcat-jdbc.jar 以防您想与您的 Oracle 数据库“对话”,但可以使用 ojdbc6.jar 而不使用池,虽然不建议这样做,因为在大多数情况下性能下降。

这里有一个很好的解释:

ojdbc6.jar - What is ojdbc6.jar file? 连接池 - https://en.wikipedia.org/wiki/Connection_pool

【讨论】:

以上是关于tomcat 8.5.x tomcat-jdbc.jar vs 官方 oracle ojdbc6.jar 驱动的主要内容,如果未能解决你的问题,请参考以下文章

在我的类路径中获取 tomcat-jdbc.jar 的推荐方法是啥?

Tomcat-JDBC源码解析及优化

Tomcat-JDBC源码解析及优化

数据库连接池的几个参数-以tomcat-jdbc举例

使用HIVE-JDBC+TOMCAT-JDBC连接(CONNECTION)中断的处理过程

使用 spring-data-jpa 和完整的 tomcat-jdbc 配置的 spring boot 为 ResetAbandonedTimer 抛出 java.lang.ClassNotFound