database connection is made singleton