Se você precisar descobrir vazamentos, você pode usar perfis como
yourkit
ou jprofiler
que é capaz de rastrear vazamentos de socket/jdbc. Para corrigir vazamentos, você precisa descobrir lugares onde você abre conexões e usar try-with-resources, que fará tudo
close()
coisas para você try (Connection conection = DriverManager.getConnection(url);
PreparedStatement statement = createPreparedStatement(conection);
ResultSet resultSet = statement.executeQuery()) {
// process the resultSet here, all resources will be cleaned up
}