JDBC garbage collection

前端 未结 5 801
傲寒
傲寒 2020-12-19 20:26

What happens if i don\'t close resultset or preparedstatements.

Will they be closed and released by the garbage collector.

I\'m asking this for local variabl

5条回答
  •  离开以前
    2020-12-19 21:03

    If your code does not close ResultSets or PreparedStatements when done using then, your application will hog scarce resources — like cursors — in the database. See, for example:

    • ResultSet not closed when connection closed?
    • What happens to the original resultSet when it is returned from a method into a new object?

    The garbage collector does not know anything about closing ResultSets or PreparedStatements, so GC won't automagically take care of that for you. What will? Java 7's try-with-resources statement!

提交回复
热议问题