内存数据库 close()

发布于 2024-08-22 03:33:40 字数 131 浏览 8 评论 0原文

在内存数据库中,是否有必要关闭结果集、语句和连接?

我的 Java 程序使用 HSQLDB 创建一个“内存表”并用数据填充其中,以便稍后查询。没有坚持。一切都在记忆中完成。该程序是单线程的,只有一个数据库连接(即没有数据库连接池)。

In an in-memory database, is it necessary to close ResultSets, Statements and Connections?

My Java program uses HSQLDB to create a "memory table" and populate it with data, which it later queries. There is no persistence. Everything is done in memory. The program is single-threaded and only has one database connection (i.e. no database connection pooling).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

独闯女儿国 2024-08-29 03:33:40

最好始终关闭您的 jdbc 对象 - 否则您将面临内存泄漏的风险。

阅读(至少)Effective Java,第 2 章 中的第 6 条和第 7 条 -它们或多或少是相关的。

It's always best to close your jdbc objects - otherwise you risk memory leaks.

Read (at least) items 6 and 7 from Effective Java, Chapter 2 - they are more or less related.

遗失的美好 2024-08-29 03:33:40
  • 连接:当然(因为数据库可能有连接限制;如果你把它放在不同的服务器上,也会有网络开销)
  • 其他对象:数据库可能不在乎,但你的 JVM 也将它们保留在内存中(并且不会) t GC 它们)。

另外,自己清理干净是一个很好的习惯,这样你就可以更好地了解“我现在正在处理的事情”。

  • connections: definitely (as the DB may have a connection limit; in case you'd put it on a different server, there's also network overhead)
  • other objects: database may not care, but your JVM keeps them in memory too (and won't GC them).

Plus, it's good practice to clean up after yourself, so you have a better view of "what I'm working with now".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文