Java OracleDataSourceFactory、OracleConnectionPoolDataSource和OracleDataSource之间有什么区别?

Java OracleDataSourceFactory、OracleConnectionPoolDataSource和OracleDataSource之间有什么区别?,java,oracle,jdbc,ojdbc,Java,Oracle,Jdbc,Ojdbc,OracleDataSourceFactory、OracleConnectionPoolDataSource和OracleDataSource之间有什么区别?您将在哪些不同的情况下使用它们?之所以有a和a,是因为JDBC标准定义了两种类型的连接: JDBC应用程序中常用的 连接池供应商的应用程序不直接使用 是一个对象工厂,是应用程序广泛使用的数据源。另一方面,用于并且仅用于连接缓存实现(例如UCP) 您可以安全地忽略OracleDataSourceFactory,它是构建Oracle不再升级

OracleDataSourceFactory
OracleConnectionPoolDataSource
OracleDataSource
之间有什么区别?您将在哪些不同的情况下使用它们?

之所以有a和a,是因为JDBC标准定义了两种类型的连接:

  • JDBC应用程序中常用的
  • 连接池供应商的应用程序不直接使用
是一个对象工厂,是应用程序广泛使用的数据源。另一方面,用于并且仅用于连接缓存实现(例如UCP)

您可以安全地忽略
OracleDataSourceFactory
,它是构建Oracle不再升级的数据源对象的工件

使用19c Oracle JDBC驱动程序,您可以实例化如下数据源:

oracle.jdbc.datasource.OracleDataSource ds = oracle.jdbc.pool.OracleDataSource();
或者,如果您正在使用replay驱动程序(用于):

oracle.jdbc.datasource.OracleDataSource ds = oracle.jdbc.replay.OracleDataSourceImpl();