我正在寻找一种实现PreparedStatement缓存的方法,以便为过去已经执行的查询保存重新创建PreparedStatement对象。
是否有一些内置的方法可以使用Tomcat实现这一目标?或者我必须自己编程此缓存吗?
答案 0 :(得分:3)
答案 1 :(得分:2)
准备语句缓存由您的JDBC连接池或JDBC驱动程序完成,而Tomcat 不。
答案 2 :(得分:1)
您没有说明您的数据库,但如果它是SQL Server,则jTDS驱动程序会在内部为您执行此操作。它全部抽象出来,因此您不需要编写任何毛茸茸的缓存代码。
见这里:http://jtds.sourceforge.net/faq.html#preparedStatmentMemoryLeak
答案 3 :(得分:1)
DB2 JDBC Driver(JCC)使用JDBC连接属性,如maxStatements = 10;它会缓存连接的语句。池不需要缓存它们。
答案 4 :(得分:0)
也许我错过了你所要求的东西,但是如果你在“原始”JDBC中进行查询,那么基本上你需要做的就是保持连接打开并继续引用的PreparedStatement。