ORACLE JDBC:DriverManager 或 OracleDataSource
Posted
技术标签:
【中文标题】ORACLE JDBC:DriverManager 或 OracleDataSource【英文标题】:ORACLE JDBC: DriverManager or OracleDataSource 【发布时间】:2012-08-23 08:53:37 【问题描述】:在尝试使用 jdbc 和匹配版本的 ojdbc6.jar
连接到我的 Oracle 11.1.0.7.0
数据库时,我发现了两个变体。
假设一个字符串 DBURL 的形式
jdbc:oracle:thin:@//#DBSERV#:#DBPORT#/#DBSID#
这些散列词('...')填写正确,它们(变体)看起来像
-
ods=new oracle.jdbc.pool.OracleDataSource();
ods.setPassword(数据银行密码);
ods.setUser(Datanbankuser);
ods.setURL(DBURL);
dbconn=ods.getConnection;
java.sql.DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
dbconn=java.sql.DriverManager.getConnection(DBURL,Datanbankuser,Datanbankpasswort);
当然是dbconn.getConnection();
。
到目前为止,我认为两者都应该工作 - 但我感兴趣哪种方式更好?也许一个已被弃用?
此外,我只能连接变体 1。也许我错过了变体 2 中的某些内容。
我对任何建议都很感兴趣。
【问题讨论】:
【参考方案1】:DataSource 是提供数据库连接的首选方式。 这种高级对象为您“完成”工作并访问低级,例如DriverManager
您可以找到更强大的DataSource
的一些实现,其中连接被池化和可重用:ConnectionPoolDataSource
DataSource
通常配置并注册到 JNDI 树中。
通常,像Tomcat 这样的应用程序/Web 服务器提供配置(和共享)数据源的能力。
【讨论】:
以上是关于ORACLE JDBC:DriverManager 或 OracleDataSource的主要内容,如果未能解决你的问题,请参考以下文章
jdbc的数据库驱动类DriverManager.getConnection()详解
使用 DriverManager 注册 JDBC 驱动程序都有哪些不同的方法