4

在尝试使用具有匹配版本的Oracle 11.1.0.7.0jdbc 连接到我的数据库时,我发现了两个变体。ojdbc6.jar假设一个字符串DBURL的形式

jdbc:oracle:thin:@//#DBSERV#:#DBPORT#/#DBSID#

这些散列词('...')填写正确的地方,它们(变体)看起来像

  1. ods=新 oracle.jdbc.pool.OracleDataSource();
    ods.setPassword(数据银行密码);
    ods.setUser(数据银行用户);
    ods.setURL(DBURL);
    dbconn=ods.getConnection;
  2. java.sql.DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
    dbconn=java.sql.DriverManager.getConnection(DBURL,数据银行用户,数据银行密码);

当然紧随其后dbconn.getConnection();
到目前为止,我认为两者都应该工作 - 但我感兴趣哪种方式更好?也许一个已被弃用?
此外,我只能与变体 1 联系。也许我错过了变体 2中的某些内容。
我对任何建议都感兴趣。

4

1 回答 1

2

DataSource是提供与数据库的连接的首选方式。这种高级对象为您“完成”工作并访问较低的类,例如DriverManager

您可以找到一些DataSource更强大的实现,其中连接是池化和可重用的:ConnectionPoolDataSource

DataSource通常配置并注册到 JNDI 树中。
通常,像Tomcat这样的应用程序/Web 服务器提供配置(和共享)数据源的能力。

于 2013-09-02T20:19:29.307 回答