Module  java.sql
软件包  javax.sql

Interface XADataSource

  • All Superinterfaces:
    CommonDataSource


    public interface XADataSource
    extends CommonDataSource
    一个内部使用的XAConnection对象的工厂。 实现XADataSource接口的对象通常使用使用Java命名和目录接口(JNDI)的命名服务进行注册。

    XADataSource的实现必须包含一个public no-arg构造函数。

    从以下版本开始:
    1.4
    • 方法详细信息

      • getXAConnection

        XAConnection getXAConnection​()
                              throws SQLException
        尝试建立可在分布式事务中使用的物理数据库连接。
        结果
        一个表示与数据源的物理连接的 XAConnection对象,可以在分布式事务中使用
        异常
        SQLException - 如果发生数据库访问错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        SQLTimeoutException - 当驱动程序确定已经超过了 setLoginTimeout方法指定的超时值,并且至少尝试取消当前的数据库连接尝试
        从以下版本开始:
        1.4
      • getXAConnection

        XAConnection getXAConnection​(String user,
                                     String password)
                              throws SQLException
        尝试使用给定的用户名和密码建立物理数据库连接。 返回的连接是可以在分布式事务中使用的连接。
        参数
        user - 正在进行连接的数据库用户
        password - 用户密码
        结果
        一个表示与数据源的物理连接的 XAConnection对象,可以在分布式事务中使用
        异常
        SQLException - 如果发生数据库访问错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        SQLTimeoutException - 当驱动程序确定已超过 setLoginTimeout方法指定的超时值并且至少尝试取消当前数据库连接尝试
        从以下版本开始:
        1.4
      • getLogWriter

        PrintWriter getLogWriter​()
                          throws SQLException

        检索DataSource对象的日志记录器。

        日志写入器是一个字符输出流,将为该数据源打印所有日志记录和跟踪消息。 这包括通过该对象的方法打印的消息,由该对象制造的其他对象的方法打印的消息等等。 打印到数据源特定日志记录器的消息不会打印到与java.sql.DriverManager类相关联的日志记录器中。 创建DataSource对象时,日志写入器最初为空; 换句话说,默认是禁用日志记录。

        Specified by:
        getLogWriter在接口 CommonDataSource
        结果
        此数据源的日志写入程序,如果禁用日志记录,则为空
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.4
        另请参见:
        CommonDataSource.setLogWriter(java.io.PrintWriter)
      • setLogWriter

        void setLogWriter​(PrintWriter out)
                   throws SQLException

        将此DataSource对象的日志写入器设置为给定的java.io.PrintWriter对象。

        日志写入器是一个字符输出流,将为该数据源打印所有日志记录和跟踪消息。 这包括通过该对象的方法打印的消息,由该对象制造的其他对象的方法打印的消息等等。 打印到数据源特定日志记录器的消息不会打印到与java.sql.DriverManager类相关联的日志记录器中。 当创建一个DataSource对象时,日志写入器最初为空; 换句话说,默认是禁用日志记录。

        Specified by:
        setLogWriter接口 CommonDataSource
        参数
        out - 新的日志记录器 禁用日志记录,设置为null
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.4
        另请参见:
        CommonDataSource.getLogWriter()
      • setLoginTimeout

        void setLoginTimeout​(int seconds)
                      throws SQLException

        设置该数据源在尝试连接到数据库时将等待的最长时间(秒)。 值为零表示超时是默认的系统超时,如果有的话; 否则,它指定没有超时。 当创建一个DataSource对象时,登录超时最初为零。

        Specified by:
        setLoginTimeout在接口 CommonDataSource
        参数
        seconds - 数据源登录时间限制
        异常
        SQLException - 如果发生数据库访问错误。
        从以下版本开始:
        1.4
        另请参见:
        CommonDataSource.getLoginTimeout()
      • getLoginTimeout

        int getLoginTimeout​()
                     throws SQLException
        获取此数据源在尝试连接到数据库时可以等待的最长时间(秒)。 值为零表示超时是默认的系统超时,如果有的话; 否则,这意味着没有超时。 当创建一个DataSource对象时,登录超时最初为零。
        Specified by:
        getLoginTimeout在接口 CommonDataSource
        结果
        数据源登录时间限制
        异常
        SQLException - 如果发生数据库访问错误。
        从以下版本开始:
        1.4
        另请参见:
        CommonDataSource.setLoginTimeout(int)