参见英文答案 >
PreparedStatement Pool with Connection Pool 1
由于PreparedStatatement包含预编译的sql命令,所以当我们使用这种类型的池时,为了不创建和破坏这个对象太多(就像线程池)一样.
有什么意义吗?或者我只是这么困惑?
由于PreparedStatatement包含预编译的sql命令,所以当我们使用这种类型的池时,为了不创建和破坏这个对象太多(就像线程池)一样.
有什么意义吗?或者我只是这么困惑?
解决方法
我想你正在寻找的是缓存准备好的语句.一些连接池可以为您做一个可选的调优参数(Weblogic,我也认为是JBoss).适用于在运行时会话中多次使用相同准备语句的情况,不一定在同一事务中.你使用静态的方式基本上意味着你只会认为你会有其中之一,而不是需要一个多个语句的缓存,所以从理论上讲它会奏效.我不确定的是如果准备好的语句缓存可以跨连接共享,或者是连接特定的.