I want to convert a result set to a string. I tried everything, but it always does not give any data. Please provide some solution.

I want to convert ResultSetto string. I tried everything, but it always does not give any data. Please provide some solution.

+3
source share
3 answers

Try the following:

StringBuilder builder = new StringBuilder();
int columnCount = resultSet.getMetaData().getColumnCount();
while (resultSet.next()) {
    for (int i = 0; i < columnCount;) {
        builder.append(resultSet.getString(i + 1));
        if (++i < columnCount) builder.append(",");
    }
    builder.append("\r\n");
}
String resultSetAsString = builder.toString();

You may need to change the format of the string a bit more to suit your needs. Alternatively, you can also map ResultSetto the Javabeans collection whose class has Object#toString()overriden.

eg.

public class Row {
    private Long id;
    private String columnName1;
    private String columnName2;
    // Add/generate constructors, getters and setters.

    public String toString() {
        return String.format("Row[id=%d,columName1=%s,columnName2=%s", id, columnName1, columnName2);
    }
}

with

List<Row> rows = new ArrayList<Row>();
while (resultSet.next()) {
    Row row = new Row();
    row.setId(resultSet.getLong("id"));
    row.setColumnName1(resultSet.getString("columnName1"));
    row.setColumnName2(resultSet.getString("columnName2"));
    rows.add(row);
}

// To display it:
for (Row row : rows) {
    System.out.println(row);
}

(, -, " " ), , , .

+2

toString() String, .

0

, "tx_content", "TX_CONTENT" - / .

0

Source: https://habr.com/ru/post/1734031/


All Articles