public void selectUsers(OnSelectUsersHandler handler) throws Exception {
    String query = "SELECT * FROM author_detail";
    String queryInsert = "INSERT INTO author_feature_values (author_id, type, value) VALUES (?, ?, ?)";
    PreparedStatement pstmt = null;
    ResultSet rs = null;
    PreparedStatement pstmtInsert = null;
    try {
      pstmt = connect.prepareStatement(query);
      pstmtInsert = connect.prepareStatement(queryInsert);
      rs = pstmt.executeQuery();

      if (handler != null) {
        handler.handle(pstmtInsert, rs);
      }

    } finally {

      if (rs != null && !rs.isClosed()) {
        rs.close();
      }

      if (pstmt != null && !pstmt.isClosed()) {
        pstmt.close();
      }

      if (pstmtInsert != null && !pstmtInsert.isClosed()) {
        pstmtInsert.close();
      }
    }
  }