![JAR search and dependency download from the Maven repository](/logo.png)
net.dongliu.dbutils.handlers.ListResultHandler Maven / Gradle / Ivy
package net.dongliu.dbutils.handlers;
import net.dongliu.dbutils.ResultSetHandler;
import net.dongliu.dbutils.RowProcessor;
import javax.annotation.Nonnull;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
* Class that simplify development of ResultSetHandler classes that convert ResultSet into List.
*
* @param the target List generic type
*/
public class ListResultHandler implements ResultSetHandler> {
private final RowProcessor rowProcessor;
public ListResultHandler(RowProcessor rowProcessor) {
this.rowProcessor = Objects.requireNonNull(rowProcessor);
}
/**
* Whole ResultSet handler. It produce List as result.
*
* @param rs ResultSet to process.
* @return a list of all rows in the result set
* @throws SQLException error occurs
*/
@Nonnull
@Override
public List handle(ResultSet rs) throws SQLException {
List rows = new ArrayList<>();
int row = 1;
while (rs.next()) {
rows.add(rowProcessor.convert(rs, row++));
}
return rows;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy