- 所有父级接口:
CommonDataSource
内部使用的
XAConnection
对象的工厂。实现 XADataSource
接口的对象通常在使用 Java 命名和目录接口 (JNDI) 的命名服务中注册。
XADataSource
的实现必须包含一个公共的无参数构造函数。
- 自从:
- 1.4
-
方法总结
修饰符和类型方法描述default XAConnectionBuilder
创建一个新的XAConnectionBuilder
实例int
获取此数据源在尝试连接到数据库时可以等待的最长时间(以秒为单位)。检索此DataSource
对象的日志编写器。尝试建立可在分布式事务中使用的物理数据库连接。getXAConnection
(String user, String password) 尝试使用给定的用户名和密码建立物理数据库连接。void
setLoginTimeout
(int seconds) 设置此数据源在尝试连接到数据库时将等待的最长时间(以秒为单位)。void
setLogWriter
(PrintWriter out) 将此DataSource
对象的日志编写器设置为给定的java.io.PrintWriter
对象。在接口 javax.sql.CommonDataSource 中声明的方法
createShardingKeyBuilder, getParentLogger
-
方法详情
-
getXAConnection
尝试建立可在分布式事务中使用的物理数据库连接。- 返回:
-
一个
XAConnection
对象,表示到数据源的物理连接,可用于分布式事务 - 抛出:
SQLException
- 如果发生数据库访问错误SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法SQLTimeoutException
- 当驱动程序确定已超过setLoginTimeout
方法指定的超时值并且至少已尝试取消当前数据库连接尝试- 自从:
- 1.4
-
getXAConnection
尝试使用给定的用户名和密码建立物理数据库连接。返回的连接是可以在分布式事务中使用的连接。- 参数:
user
- 代表其建立连接的数据库用户password
- 用户密码- 返回:
-
一个
XAConnection
对象,表示到数据源的物理连接,可用于分布式事务 - 抛出:
SQLException
- 如果发生数据库访问错误SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法SQLTimeoutException
- 当驱动程序确定已超过setLoginTimeout
方法指定的超时值并且至少已尝试取消当前数据库连接尝试- 自从:
- 1.4
-
getLogWriter
检索此
DataSource
对象的日志编写器。日志编写器是一个字符输出流,该数据源的所有日志记录和跟踪消息都将打印到该输出流中。这包括由此对象的方法打印的消息、由该对象制造的其他对象的方法打印的消息,等等。打印到数据源特定日志编写器的消息不会打印到与
java.sql.DriverManager
类关联的日志编写器。创建DataSource
对象时,日志写入器最初为空;换句话说,默认情况下禁用日志记录。- 指定者:
getLogWriter
在接口CommonDataSource
中- 返回:
- 此数据源的日志编写器,如果禁用日志记录则为 null
- 抛出:
SQLException
- 如果发生数据库访问错误- 自从:
- 1.4
- 参见:
-
setLogWriter
将此
DataSource
对象的日志编写器设置为给定的java.io.PrintWriter
对象。日志编写器是一个字符输出流,该数据源的所有日志记录和跟踪消息都将打印到该输出流中。这包括由此对象的方法打印的消息、由该对象制造的其他对象的方法打印的消息,等等。打印到特定于数据源的日志编写器的消息不会打印到与
java.sql.DriverManager
类关联的日志编写器。创建DataSource
对象时,日志写入器最初为空;换句话说,默认情况下禁用日志记录。- 指定者:
setLogWriter
在接口CommonDataSource
中- 参数:
out
- 新的日志编写器;禁用日志记录,设置为空- 抛出:
SQLException
- 如果发生数据库访问错误- 自从:
- 1.4
- 参见:
-
setLoginTimeout
设置此数据源在尝试连接到数据库时将等待的最长时间(以秒为单位)。零值指定超时是默认的系统超时(如果有的话);否则,它指定没有超时。创建
DataSource
对象时,登录超时最初为零。- 指定者:
setLoginTimeout
在接口CommonDataSource
中- 参数:
seconds
- 数据源登录时限- 抛出:
SQLException
- 如果发生数据库访问错误。- 自从:
- 1.4
- 参见:
-
getLoginTimeout
获取此数据源在尝试连接到数据库时可以等待的最长时间(以秒为单位)。值为零表示超时是默认的系统超时(如果有的话);否则,表示没有超时。创建DataSource
对象时,登录超时最初为零。- 指定者:
getLoginTimeout
在接口CommonDataSource
中- 返回:
- 数据源登录时限
- 抛出:
SQLException
- 如果发生数据库访问错误。- 自从:
- 1.4
- 参见:
-
createXAConnectionBuilder
创建一个新的XAConnectionBuilder
实例- 实现要求:
-
默认实现将抛出一个
SQLFeatureNotSupportedException
。 - 返回:
- 创建的 XAConnectionBuilder 实例
- 抛出:
SQLException
- 如果创建构建器时发生错误SQLFeatureNotSupportedException
- 如果驱动程序不支持分片- 自从:
- 9
- 参见:
-