数据源 DataSource

原创
2015/10/08 05:08
阅读数 298

数据源 DataSource


javax.sql 接口 DataSource

从1.4版本开始

DataSource 对象表示的物理数据源的连接。作为 DriverManager 设施的替代项,DataSource 对象是获取连接的首选方法。实现 DataSource 接口的对象通常在基于 JavaTM Naming and Directory Interface (JNDI) API 的命名服务中注册。


DataSource 接口由驱动程序供应商实现。共有三种类型的实现:


基本实现 - 生成标准 Connection 对象

连接池实现 - 生成自动参与连接池的 Connection 对象。此实现与中间层连接池管理器一起使用。

分布式事务实现 - 生成一个 Connection 对象,该对象可用于分布式事务,并且几乎始终参与连接池。此实现与中间层事务管理器一起使用,并且几乎始终与连接池管理器一起使用。

DataSource 对象的属性在需要时可以修改。例如,如果将数据源移动到另一个服务器,则可更改与服务器相关的属性。其优点是,因为可以更改数据源的属性,所以任何访问该数据源的代码都无需更改。


通过 DataSource 对象访问的驱动程序不会向 DriverManager 注册。通过查找操作检索 DataSource 对象,然后使用该对象创建 Connection 对象。使用基本的实现,通过 DataSource 对象获取的连接与通过 DriverManager 设施获取的连接相同。


方法摘要

 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 对象。


从1.6时开始

Method Summary

 Connection getConnection() 

          Attempts to establish a connection with the data source that this DataSource object represents.

 Connection getConnection(String username, String password) 

          Attempts to establish a connection with the data source that this DataSource object represents.

 

Methods inherited from interface javax.sql.CommonDataSource

getLoginTimeout, getLogWriter, setLoginTimeout, setLogWriter

 

Methods inherited from interface java.sql.Wrapper

isWrapperFor, unwrap


1.4 增加包javax.sql

1.5 增加子包avax.sql.rowset

1.6 类改造CommonDataSource等

1.7 类改造RowSetFactory等

1.8 内部代码修改


展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部