Вызов JDBC PreparedStatement в другом соединении JDBC PreparedStatement Утечка?

У меня есть некоторый код, который я поддерживаю, который делает встроенный вызов JDBC внутри другого. Это пахнет неправильно для меня, но что более важно, мне интересно, если это приведет к утечке соединения?

public Table1 method1(){
    String query = "SELECT id1, id2 FROM table1";
    Table1 t1 = new Table();
    try (Connection masterDB = getConnection();
         PreparedStatement statement = masterDB.prepareStatement(query);
         ResultSet result = statement.executeQuery()) {
            while (result.next()) {
                t1.setEntry(method2(result.getInt("id1")));
            }
    }
    return t1;
  }

  public Table2 method2(){
    String query = "SELECT idA, idB FROM table2";
    Table2 t2 = new Table2();
    try (Connection masterDB = getConnection();
         PreparedStatement statement = masterDB.prepareStatement(query);
         ResultSet result = statement.executeQuery()) {
            while (result.next()) {
                t2.setId((result.getInt("idA")));
            }
    }
    return t2;
  }

0 ответов

Другие вопросы по тегам