oracle.jdbc.xa.client.OracleXADataSource和oracle.jdbc.pool.OracleDataSource有什么区别

时间:2012-08-23 17:59:55

标签: performance jdbc weblogic-10.x oracle-adf

我试图理解XA与非XA JDBC数据源之间的区别。另外,我如何知道使用哪种类型和版本的JDBC dtriver。我目前正在使用10.3 weblogic并尝试使用setQueryTimeout杀死长时间运行的查询,这对于OracleXADataSource来说似乎不可靠,因为它只是第一次工作而不是总是如此。 很抱歉这个基本问题,但我是Weblogic Datasource配置的新手

由于

2 个答案:

答案 0 :(得分:9)

XA jdbc驱动程序用于实现两阶段提交,这意味着两个远程资源是同一事务的一部分。 Java通过JTA指定了这个实现。一个好的阅读是例如http://www.javaworld.com/javaworld/jw-07-2000/jw-0714-transaction.html;如果你谷歌'xa jdbc驱动程序',你会发现更多的信息。

如果没有必要,不应使用XA驱动程序。我记得读过它们有些问题。

答案 1 :(得分:0)

正在使用识别JDBC驱动程序,请转到<domain_dir>/config/jdbc并打开数据源文件,检查文件中的driver-name值。

要识别驱动程序版本,请检查.jar是否正在加载驱动程序(使用-verbose:class运行WLS) - jar的名称将包含版本号。此外,您可以使用java -jar my-jdbc-file.jar来打印驱动程序版本。 OJDBC驱动程序通常存储在名为ojdbc6.jarojdbc7.jar等的文件中。