It seems that JDBC Spec does not elaborate the accurate meanings of alive or idle connections
in the datasource connection pool. Is it just implementation specific? How does DBCP2 or HikariCP actually inspect the connection status?
Will a connection without active transactions be marked idle below?
// assuming auto commit disabled already
Connection connection = dataSource.getConnection(); // idle?
/* issue some JDBC SQL statements */ // active?
connection.commit(); /* or rollback */ //idle again?