TestResultSetMetaDate-结果集元数据:封装了ResultSet中所有的信息,比如有列数,表中列的别名(lable),表中列的名字
public class TestResultSetMetaDate {
@Test
public void testResultSetMetaDate(){
Connection connection = null;
Statement s = null;
ResultSet rs = null;
try {
connection = JDBCUtils.getConnection();
s = connection.createStatement();
String sql = "select order_id id, order_name name, order_date date from `order` where order_id = 1";
rs = s.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
// 1.getColumnCount():获取结果集的列数
int count = rsmd.getColumnCount();
while(rs.next()){
for(int i=0; i<count; i++){
//获取结果集中每列的值
Object columnValue = rs.getObject(i + 1);
System.out.println("····"+columnValue);
//获取表中列的名字
String columnName = rsmd.getColumnName(i + 1);
System.out.println(""+columnName);
//获取表的列的别名
String columnLable = rsmd.getColumnLabel(i + 1);
System.out.println(",,,,,"+columnLable);
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
JDBCUtils.close(rs, s, connection);
}
}