繁体   English   中英

我可以在Java中使用针对任意数据库连接的预准备语句吗?

[英]Can I use a prepared statement against arbitrary database connections in Java?

[Java 7 / Oracle]我有一个多线程应用程序,我计划在其中使用数据库连接池。 我想用准备好的陈述; 但是,似乎预编译语句包含并因此似乎与单个数据库连接对象密不可分。 我想要的范例不是 “打开一个连接,准备一个语句,做几千次相同的查询,然后关闭连接”,似乎是所有地方的示例代码; 我想要的范例是“预先编译这个语句,以便尽可能高效地运行 - 从池中获取随机连接 - 对该连接执行语句 - 将连接释放回池”。 这在Java中甚至可能吗?

如果使用连接池,则在连接对象上调用close时实际上不会关闭连接。 而是返回到池中。 这通常是由包裹在其中截取您的来电代理原来的连接来实现close

许多连接池和一些驱动程序提供了缓存预准备语句的可能性,以解决持续准备相同语句的问题。 当然,因为预准备语句链接到连接,所以您可能会为池中的每个连接预先创建相同的语句。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM