OceanBase Connector/J 的语句池功能允许应用程序以与使用 Connection 对象相同的方式重用 PreparedStatement
对象。
多个逻辑连接可以以透明方式重用 PreparedStatement
对象。
应用程序可以通过从 Statement
接口调用 isPoolable
方法来找出数据源是否支持语句池。如果返回值为 true
,则应用程序知道正在准备 PreparedStatement
对象。应用程序还可以通过使用 Statement 接口中的 setPoolable 方法来请求要合并或不合并的语句。
Pooled Statement 的重用对于应用程序应该是完全透明的,也就是说,无论 PreparedStatement
对象是否参与语句池,应用程序代码应保持相同。如果应用程序关闭了 PreparedStatement
对象,则必须调用 Connection.prepareStatement
方法进行重用。
应用程序关闭 Pooled Statement 的方式与关闭非 Pooled Statement 的方式完全相同。一旦语句被关闭,无论该语句是池中的还是非池中的,都不再供应用程序使用,如果尝试重用该语句会引发异常。唯一可见的区别是应用程序无法直接关闭正在池化的物理语句,而是由池管理器负责完成。PooledConnection.closeAll
方法关闭给定物理连接上打开的所有语句,从而释放与这些语句关联的资源。
关闭 Pooled Statement 的方法如下:
此 java.sql.Statement 接口方法由应用程序调用。如果正在对该语句进行池化,则它将关闭该应用程序使用的逻辑语句,但不会关闭正在池化的物理语句。
此 java.sql.Connection 接口方法由应用程序调用。此方法的行为根据使用该语句的连接是否被池化而有所不同。
此方法关闭物理连接以及该连接创建的所有语句。这是必需的,因为垃圾回收机制无法检测何时可以释放外部管理的资源。
此方法关闭逻辑连接及其返回的逻辑语句,但打开基础的 PooledConnection
对象和所有关联的缓冲语句。
PooledConnection.closeAll
连接池管理器调用此方法以关闭 PooledConnection
对象所有正在池化的物理语句。
Web3VanillaJavascript入门项目这是一个简单的应用程序登录用户,在Moralis数据库中创建用户配置文件并将用户事务同步到Moralis...
相关性分析处理变量之间的关系。 相关系数是两个变量之间的线性关联的度量。相关系数的值总是在-1和+1之间。 SAS提供过程PROC CO...
Impala的Drop View查询用于删除现有视图。 由于视图是一个逻辑结构,因此没有物理数据将受到视图查询的影响。 语法下面是drop视...
场景介绍对象关系映射数据库适用于开发者使用的数据可以分解为一个或多个对象,且需要对数据进行增删改查等操作,但是不希望编写...
在本章中,我们将讨论Apache Storm的实时应用程序。我们将看到Storm如何在Twitter中使用。Twitter Twitter是一种在线社交网络服...