在尝试使用匹配版本的ojdbc6.jar使用jdbc连接到我的Oracle 11.1.0.7.0数据库时,我发现了两个变体.
假设表单的字符串DBURL
jdbc:oracle:thin:@//#DBSERV#:#DBPORT#/#DBSID#
那些散列的单词(‘…’)填充正确,它们(变体)看起来像
> ods = new oracle.jdbc.pool.OracleDataSource();
ods.setPassword(Datenbankpasswort);
ods.setUser(Datenbankuser);
ods.setURL(DBURL);
dbconn = ods.getConnection;
> java.sql.DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
dbconn = java.sql.DriverManager.getConnection(DBURL,Datenbankuser,Datenbankpasswort);
当然后面是dbconn.getConnection();.
到目前为止,我认为两者都应该有效 – 但我有兴趣哪种方式更好?也许有人不赞成?
此外,我只能连接变体1.也许我错过了变体2中的某些内容.
我对任何建议感兴趣.
最佳答案
DataSource是提供与数据库的连接的首选方法.
这种高级对象为你做“工作”并访问较低级别,如
DriverManager
您可以找到更强大的DataSource的一些实现,其中连接是可汇集的并且可重用:ConnectionPoolDataSource
通常配置DataSource并将其注册到JNDI树中.
通常,像Tomcat这样的应用程序/ Web服务器提供配置(和共享)DataSource的功能.