Oracle thin driver vs. OCI driver。优点和缺点?

当您开发与oracle数据库通信的Java应用程序时,有2个选项对吗?一个是oracle精简驱动程序,另一个是OCI驱动程序,需要自己安装(如果我有误解,请纠正)。

现在,有哪些优点和缺点?显然,瘦驱动程序在安装方面听起来要好得多,但是OCI可以和薄驱动程序不能吗?

开发环境是Tomcat6 + Spring 3.0 + JPA(Hibernate) + apache-DBCP


答案 1

驱动程序的选择取决于几个因素。对数据库的调用的性质(例如,您的应用程序似乎不会使用大量存储的proc调用),故障转移(例如群集Oracle服务器)和分布式事务的要求。通常建议使用精简驱动程序,但如果 OCI 驱动程序的某些特定功能必须具有,则可能必须考虑 OCI 驱动程序。还有人说,Oracle 10及更高版本中的驱动程序确实具有匹配的功能,并且在现代JVM上几乎没有性能差异。


答案 2

除非您依赖于仅在 JDBC-OCI 驱动程序中可用而在 JDBC 精简驱动程序中不可用的功能,否则 Oracle 建议使用 thin。最新的 Oracle 数据库功能(如事务保护或应用程序连续性)仅在 JDBC 精简驱动程序中可用。精简驱动程序也比 JDBC-OCI 驱动程序使用得更多,因此可以更快地修复 bug。它被认为更稳定。如果您仍然不相信,请考虑Oracle Weblogic Server仅附带JDBC精简驱动程序。


推荐