单例连接 + 单例准备好的语句
Posted
技术标签:
【中文标题】单例连接 + 单例准备好的语句【英文标题】:Singleton connection + singleton prepared statement 【发布时间】:2013-10-17 10:54:14 【问题描述】:我正在用 mysql 服务器实现一个服务器。
我得出的结论是,我的所有查询都将使用准备好的语句发送。
我将为不同的目的制作多个单例准备语句(例如,选择令牌、插入/替换令牌、插入电话号码......)。
这是我的问题。
为了使单例预处理语句表现良好,我是否应该在每次执行查询时关闭它? (仅关闭 ResultSet,不关闭准备好的语句或连接)
单例预处理语句会比每次都创建一个语句更好吗?
【问题讨论】:
【参考方案1】:简单的答案 - 每次都创建和关闭语句。
如果您没有实现非常专业的批处理功能,那么创建和关闭准备好的语句将是一个微不足道的开销。
对于服务器应用程序来说,单例连接也不是一个好主意。任何时候只有一个线程可以处理一个连接。
【讨论】:
这取决于正在使用的 JDBC 驱动程序以及是否正在使用连接池。如果驱动程序和池都没有缓存语句,那么您将失去准备好的语句的好处。以上是关于单例连接 + 单例准备好的语句的主要内容,如果未能解决你的问题,请参考以下文章