Win a copy of Svelte and Sapper in Action this week in the JavaScript forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Bear Bibeault
  • Junilu Lacar
Sheriffs:
  • Jeanne Boyarsky
  • Tim Cooke
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • salvin francis
  • Frits Walraven
Bartenders:
  • Scott Selikoff
  • Piet Souris
  • Carey Brown

how to properly handle connections

 
Ranch Hand
Posts: 225
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, I have a utility class that has 2 methods - openConnection() and closeConnection(). These methods are used by a data access class that has 5 methods. Each of the 5 methods will open a connection and close a connection, and they run one after the other as part of an initialization routine for retrieving data.

My questions is: Should I reuse a connection by passing it's reference around to each of the 5 methods, or should I open and close a separate connection for each of the 5 methods?

Thanks!
 
Ranch Hand
Posts: 74
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
it is better to pass the reference of the connection across methods, b'cos opening a connection is costly operations. but it all depends upon you need/requirement how you want the connection in different methods.
 
Ranch Hand
Posts: 156
Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Andy Hahn

This is totally depend upon your requirements. If your requirement is using different connection at a single time then you have to create multiple connection whereas if you can handle one connection in different operation then you can do the same.

As far as my project is concern I am using single connection in my entire project where as in certain area I am using more then one connection according to my need.
 
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It also depends on where your application gets its database connections from.

If it is running inside an application server, it most likely gets database connections from a connection pool managed by the application server (i.e., you're not opening connections yourself using DriverManager, but you're using a DataSource object provided by the appserver). In that case, you should release (close) each connection as soon as you're done with it, and not hold it for a longer time, otherwise you'll be harming the scalability of your application.

If it's a standalone application that directly opens database connections, it would be better to not close the connection immediately.
 
crispy bacon. crispy tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
    Bookmark Topic Watch Topic
  • New Topic