Tomcat中的PreparedStatement缓存

我正在寻找一种实现PreparedStatement缓存的方法,以便为过去已经执行的查询保存重新创建PreparedStatement对象。

有没有一些内置的方法来实现这个使用Tomcat? 或者我必须自己编程此缓存吗?

我相信tomcat使用commons-dbcp和commons-dbcp支持预处理语句池。

看看这里 。

poolPreparedStatements false为此池启用预准备语句池。

准备好的语句缓存由JDBC连接池或JDBC驱动程序完成, 而不是由Tomcat完成。

您没有说明您的数据库,但如果它是SQL Server,则jTDS驱动程序会在内部为您执行此操作。 它全部抽象出来,因此您不需要编写任何毛茸茸的缓存代码。

请参见此处: http : //jtds.sourceforge.net/faq.html#preparedStatmentMemoryLeak

DB2 JDBC驱动程序(JCC)使用JDBC连接属性,如maxStatements = 10; 它会缓存连接的语句。 池不需要缓存它们。

也许我错过了你所要求的东西,但是如果你在“原始”JDBC中进行查询,那么基本上你需要做的就是保持连接打开并继续引用PreparedStatement。