public interface DataSource
该工厂用于提供到此 DataSource
对象表示的物理数据源的连接。作为 DriverManager
设施的替代项,DataSource
对象是获取连接的首选方法。实现 DataSource
接口的对象通常在基于 JavaTM Naming and Directory Interface (JNDI) API 的命名服务中注册。
DataSource
接口由驱动程序供应商实现。共有三种类型的实现:
- 基本实现 - 生成标准
Connection
对象 - 连接池实现 - 生成自动参与连接池的
Connection
对象。此实现与中间层连接池管理器一起使用。 - 分布式事务实现 - 生成一个
Connection
对象,该对象可用于分布式事务,并且几乎始终参与连接池。此实现与中间层事务管理器一起使用,并且几乎始终与连接池管理器一起使用。
DataSource
对象的属性在需要时可以修改。例如,如果将数据源移动到另一个服务器,则可更改与服务器相关的属性。其优点是,因为可以更改数据源的属性,所以任何访问该数据源的代码都无需更改。
通过 DataSource
对象访问的驱动程序不会向 DriverManager
注册。通过查找操作检索 DataSource
对象,然后使用该对象创建 Connection
对象。使用基本的实现,通过 DataSource
对象获取的连接与通过 DriverManager
设施获取的连接相同。
-
从以下版本开始:
-
1.4
方法摘要 Connection
getConnection()
尝试建立与此DataSource
对象表示的数据源的连接。Connection
getConnection(String username, String password)
尝试建立与此DataSource
对象表示的数据源的连接。int
getLoginTimeout()
获取此数据源尝试连接到某一数据库时可以等待的最长时间,以秒为单位。PrintWriter
getLogWriter()
检索此DataSource
对象的日志 writer。void
setLoginTimeout(int seconds)
设置数据源尝试连接到某一数据库时将等待的最长时间,以秒为单位。void
setLogWriter(PrintWriter out)
将此DataSource
对象的日志 writer 设置为给定的java.io.PrintWriter
对象。