Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Closing Statement.

 
Costa lamona
Ranch Hand
Posts: 102
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi

I am new to jdbc, closing a Statement is releasing its resources, I am wondering if this will include closing the connection itself.
also If I am connecting to localhost db,
Is creating a new Connection will be costy?
Is creating new Statement will be costy?

Thanks
 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 34195
340
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Costa,
Closing a statement will not close the connection because a connection is a higher level concept. Closing a connection will sometimes close a statement but you should not rely on this.

Creating a connection is usually relatively costly. This is why people use connection pools. Creating a statement is not costly and a frequent operation.
 
Bauke Scholtz
Ranch Hand
Posts: 2458
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Assuming that you're using a decent JDBC driver, closing a statement will only close any opened resultsets and closing a connection will close any opened statements and indirectly also its opened resultsets.

Obtaining a connection is the most expensive task in JDBC. You can improve performance by using connection pooling. When you're developing a webapplication, it's good to know that most self-respected application servers offers JNDI connection pooling out of the box. When you're developing a client application, then you may need to add connection pooling libraries so that you can make use of it. Commonly used ones are Apache Commons DBCP, C3P0 and Proxool
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic