代码之家  ›  专栏  ›  技术社区  ›  Anirban

关闭连接的正确方式

  •  0
  • Anirban  · 技术社区  · 6 年前

    我们在项目中使用连接池。我们在项目中看到,连接关闭后,语句将关闭。我知道,对于连接池,在连接关闭后,与数据库的物理连接不会关闭,而是返回到池中以供重用。所以我的问题是:

    如果在连接关闭后关闭语句,会发生什么情况?语句是否正确关闭/是否关闭连接将关闭所有语句,并且关闭语句是多余的/语句是打开的,尽管连接返回到池中,但由于打开了语句,因此无法重用?(我们同时使用语句和PreparedStatement)。

    1 回复  |  直到 6 年前
        1
  •  1
  •   user207421    6 年前

    如果在连接关闭后关闭语句,会发生什么情况?

    没有什么他们已经关门了。这是有记录的。

    报表是否正确关闭

    对这是有记录的。

    /关闭连接会关闭所有语句吗

    对这是有记录的。

    结束陈述是多余的

    这些语句是打开的,尽管连接返回到池,但由于打开了语句,它是不可重用的?(我们同时使用语句和PreparedStatement)。

    我对这件事一无所知。如果连接已关闭,则 Statements ResultSets 从它派生的也都是封闭的。这是有记录的。如果 Connection 未关闭,则 报表 结果集 也不会关闭,除非你关闭它们。

    您必须组织代码,以便不依赖 结果集 超越 Statement 陈述 超越 联系 。这非常简单。