com.xiaoleilu.hutool.db.handler.HandleHelper Maven / Gradle / Ivy
package com.xiaoleilu.hutool.db.handler;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.Collection;
import com.xiaoleilu.hutool.db.Entity;
/**
* 数据结果集处理辅助类
* @author loolly
*
*/
public class HandleHelper {
/**
* 处理单条数据
* @param columnCount 列数
* @param meta ResultSetMetaData
* @param rs 数据集
* @return 每一行的Entity
* @throws SQLException
*/
public static Entity handleRow(int columnCount, ResultSetMetaData meta, ResultSet rs) throws SQLException {
final Entity row = Entity.create(meta.getTableName(1));
String columnLabel;
for (int i = 1; i <= columnCount; i++) {
columnLabel = meta.getColumnLabel(i);
row.put(columnLabel, rs.getObject(columnLabel));
}
return row;
}
/**
* 处理单条数据
* @param rs 数据集
* @return 每一行的Entity
* @throws SQLException
*/
public static Entity handleRow(ResultSet rs) throws SQLException {
final ResultSetMetaData meta = rs.getMetaData();
final int columnCount = meta.getColumnCount();
return handleRow(columnCount, meta, rs);
}
/**
* 处理多条数据
* @param
* @param rs 数据集
* @param collection 数据集
* @return Entity列表
* @throws SQLException
*/
public static > T handleRs(ResultSet rs, T collection) throws SQLException {
final ResultSetMetaData meta = rs.getMetaData();
final int columnCount = meta.getColumnCount();
while(rs.next()) {
collection.add(HandleHelper.handleRow(columnCount, meta, rs));
}
return collection;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy