Какая реализация из перечисленных ниже лучше для преобразования ResultSet в пару KeyVal? - PullRequest
0 голосов
/ 18 апреля 2019

У меня есть 2 фрагмента кода для преобразования данных ResultSet в список пары значений ключа LinkedHashMap.Мне нужны предложения по лучшей реализации.Обратите внимание, что данные, которые будут поступать, не очень велики.

private static List<LinkedHashMap<String,String>> getKeyValuePair(ResultSet result) throws SQLException {
List<LinkedHashMap<String,String>> keyVal = new ArrayList<>();
LinkedHashMap<String,String> tempData = new LinkedHashMap<>();

int dataCounter = 0;

ResultSetMetaData rsmd = result.getMetaData();
int colCount = rsmd.getColumnCount();

while (result.next()){
for (int cnt01 = 1 ; cnt01 <= colCount; cnt01 ++ ) {
  tempData.put(rsmd.getColumnName(cnt01),result.getString(cnt01) );
}
 **keyVal.add(dataCounter, (LinkedHashMap<String, String>) tempData.clone());**
 dataCounter++;
            tempData.clear();
        }
        return  keyVal;
}

private static List<LinkedHashMap<String,String>> getKeyValuePair(ResultSet result) throws SQLException 
{
        List<LinkedHashMap<String,String>> keyVal = new ArrayList<>();
        int dataCounter = 0;

        ResultSetMetaData rsmd = result.getMetaData();
        int colCount = rsmd.getColumnCount();

        while (result.next()){
        **LinkedHashMap<String,String> tempData = new LinkedHashMap<>();**
            for (int cnt01 = 1 ; cnt01 <= colCount; cnt01 ++ ) {
                tempData.put(rsmd.getColumnName(cnt01),result.getString(cnt01) );
            }
            **keyVal.add(dataCounter, tempData);**
            dataCounter++;
        }
        return  keyVal;
    }
...