• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

whats the use of closing ResultSet ?

 
Shilpa Nagaraj
Greenhorn
Posts: 4
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
when we close a connection to database with out closing resultset it gives out an error stating that resultset is already closed . So when we are not able to access resultset after closing connection to database , is it necessary to close resultset?
 
Prabhu Sathya
Greenhorn
Posts: 8
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hope you find this article useful :


Many books about JDBC and most of JDBC-related sample code floating around seems to assume that JDBC is used directly, meaning that database connection is established by the DriverManager, and is actually released when myJDBCConnection.close() method is called. In this case, all resources associated with this database connection, such as ResultSet and Statement objects (and whatever is used on the database side to implement them), are released as well.

There is a problem with this approach. When moving to ´┐ŻEnterprise´┐Ż-type applications, most JDBC connections are obtained from connection pools. When myConnection.close() is invoked on such a connection, it is not actually released. It is returned back to the connection pool to be re-used by other objects. In this case, all database resources associated with the connection may not be released. Thus, database cursors and other database-specific objects that are used to implement ResultSets and Statements are not freed.

This may result in applications running out of database resources, even though the JDBC connections themselves are properly closed.

The way to work around this issue is to close ResultSet and various Statement objects as soon as the code is done using them, or in the finally{} block.
 
Shilpa Nagaraj
Greenhorn
Posts: 4
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for the reply
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic