gpt4 book ai didi

Java SQLPreparedStatement和维护连接

转载 作者:行者123 更新时间:2023-12-02 05:47:25 25 4
gpt4 key购买 nike

我正在创建一个服务器端 Java 任务,该任务永远每 60 秒执行一次相同的 SQL UPDATE,因此它非常适合使用 java.sql.PreparedStatement。

我宁愿每 60 秒重新连接一次数据库,也不愿假设单个连接在未来几个月仍能正常工作。但是,如果每次打开新连接时都必须重新生成新的PreparedStatement,那么似乎就达不到目的了。

我的问题是:既然PreparedStatement是从java.sql.Connection创建的,这是否意味着必须维护连接才能有效地使用PreparedStatement,或者PreparedStatement是否保存在数据库中并且不会与每个SQL一起重新编译新连接?我目前正在使用 postgresql,但可能并不总是如此。

我想我可以保持连接打开,然后仅在尝试更新时发生异常时重新打开。

最佳答案

使用数据库连接池。即使在关闭连接后,这也将使连接保持在 sleep 模式下。此方法还可以节省应用程序的性能。

尽管创建了 PreparedStatement 的连接,SQL 语句仍将由数据库引擎缓存,并且在重新创建 PreparedStatement 对象时不会出现任何问题。

关于Java SQLPreparedStatement和维护连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23921230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com